在較大的系統中,一個類的功能應該儘可能的相對簡單,便於之後的維護和擴展。MVC模式可以很好的拆分類功能。
M-->Model,模型對應數據,程序中命名爲DO,Data Object,只負責數據的存儲,序列化等;
V-->View,顯示,程序中命名爲VO,View object,負責數據的顯示;
C-->Control,控制,程序中命名爲BO,Business Object,負責業務邏輯的處理;
拆分後,等於將一個類拆分爲了三個類,一一對應。三者的調用模型爲:
其中VO,BO可以調用DO,DO不能調用VO和BO;VO和BO可以相互調用,但最好BO別調用VO,除非迫不得已。
對於存在繼承體系的類結構,VO和BO的需要根據DO創建,可以在DO中存儲一個字符串,加上"VO"和"BO"標識,利用反射機制創建所對應的對象。