MV、MVC、MVP、MVVM簡介,對MVC不肯定了。

參考:html

  http://www.cnblogs.com/changxiangyi/archive/2012/07/16/2594297.htmlandroid

  http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/1214/3772.htmlmvc

1,MV

  MVC中沒有C,V中有大量業務代碼。v與m直接通訊。spa

Android 設計舉例:  下圖中的 Data Layer 層就是MVC中的M。設計

2,MVC

  MVC(Model View Controller),在mv之上加了c,v只顯示數據,m只管理數據。code

  mvc把我搞暈了,網上有兩種說法:對MVC不肯定了。htm

  • 當用戶在v產生行爲後,只能經過c改變數據,m改變後直接通知v。是個單向三角

  • c控制v與m,c負責業務模塊切換,每一個模塊都有本身的v,m。

 

 

 

 

 

 

Android舉例:blog

3,MVP

  Model View Presenter, 在mvc基礎上,m不直接通知v而是通知c,c再通知v,這時c不叫c了,改叫p。get

 

Android舉例:基礎

4,MVVM

  Model-View-ViewModel ,View沒有大量代碼邏輯。結合WPF、Silverlight綁定機制,MVP演變出了MVVM,充分利用了WPF、Silverlight的優點,將大量代碼邏輯、狀態轉到ViewModel,能夠說MVVM是專門爲WPF、Silverlight打造的。

相關文章
相關標籤/搜索