表现与数据分离(MV*)

1.表现与数据分离

 

图形界面程序:程序把数据通过图形展示给用户,用户通过操作修改数据,然后把修改的数据展现给用户。

为了更好的管理程序的复杂性,把图形界面与图形数据分离开来(解耦),实现职责分离,即为表现与数据分离。把管理用户界面的层次称为View,应用程序的数据为Model(包括数据以及对数据的直接操作)。

 

 

2.需要把view与model粘合在一起,出现了MV*模式

 

(1)MVC(Model-View-Controller)模式

 

  操作View后,Controller更新Model,Model更新后通过观察者模式更新View。

 

 

 

(2)MVP(Model-View-Presenter)模式

 

  View与Model 通过Presenter通信,操作View后通过Presenter更新Model,Model更新后通过Presenter更新Model。

 

 

 

(3)MVVM(Model-View-ViewModel)模式

 

   Model更新后ViewModel自动同步View,操作view后ViewModel自动同步Model。不需要像Presenter手动同步Model和View。

 

 

 

MVC->MVP->MVVM是一个不断优化的过程!

posted @ 2016-06-22 16:32  springmin  阅读(294)  评论(0)    收藏  举报