簡單聊一聊對MVC的理解
Model層實現系統中的業務邏輯。
View層用於與用戶的交互。
Controller層是Model與View之間溝通的橋樑。
使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式,而C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。
使用MVC模式可以將顯示部分與數據部分分離,這樣當更換視圖或模型時可以不影響對方,更有利於程序的維護。
在Android開發中,比較流行的開發框架模式採用的是MVC框架模式,採用MVC模式的好處是便於UI界面部分的顯示和業務邏輯,數據處理分開。那麼Android項目中哪些代碼來充當M,V,C角色呢?
- M層:適合做一些業務邏輯處理,比如數據庫存取操作,網絡操作,複雜的算法,耗時的任務等都在model層處理。
- V層:應用層中處理數據顯示的部分,XML佈局可以視爲V層,顯示Model層的數據結果。
- C層:在Android中,Activity處理用戶交互問題,因此可以認爲Activity是控制器,Activity讀取V視圖層的數據(eg.讀取當前EditText控件的數據),控制用戶輸入(eg.EditText控件數據的輸入),並向Model發送數據請求(eg.發起網絡請求等)。