MVC是构建iOS App的标准模式,是苹果推荐的一个用来组织代码的权威范式,iOS开发人员大多都以此模式作为开发的标准。但是相信很多人在开发的过程中会感觉到ViewControllert很厚重(业务逻辑、视图控制和网络请求都臃肿的写在ViewControllert)。这样的ViewControllert在可测试性、耦合性以及维护性都表现的不够好,而MVVM是在MVC的架构上引申出的一种新的模式,在这里我并没有视他为是一种全新的架构。
image.png
MVVM与MVC不同就在于多了一个ViewModel (VM),它的作用就是将业务逻辑、网络请求、数据验证等一切与视图控制无关的代码放在这里。这样不权大大地提高了可测试性,降低了耦合性,提高了代码的维护性。
网友评论