MMVM架构
“观察者模式”
数据模型驱动界面更新
数据模型驱动界面更新:在数据发生变化时,界面能够自动得到通知并进行更新。
普通应用程序的数据来源有两种:一种本地通常是本地数据库;一种是远程服务端,即网络数据。
实际开发过程中,为了更好的用户体验,通常会将本地数据库和远程服务器两种方式进行结合使用。若在 ViewModel 层对本地数据和网络数据进行业务逻辑处理,会增加 ViewModel 的复杂度,因此在 ViewModel 和 Model 层之间引入 Repository 层。在 Repository 层处理本地数据和网络数据之间的业务逻辑,让 Repository 层对 ViewModel 层负责,使 ViewModel 层只需要关系自己的业务逻辑,不用关心数据的具体来源。
引入Repository后的架构图
MVVM架构中每一层的职责都是清晰的、明确的,且只对上一层负责。这样畅远来源,岁代码量增加不容易让项目陷入技术债务中。由于每一层的职责单一,每个模块也更容易进行独立测试。