架构

https://juejin.im/post/5bcda4796fb9a05d32518ad8

 

开发架构:MVC MVP MVVM VIPER等。

设计程序架构的目的是节省开发成本,增强项目维护性。

代码量比较(开发成本)

MVC < MVVM < MVP < VIPER

粒度(职责拆分,职责清晰度,粒度越小职责越清晰)

VIPER < MVP < MVVM < MVC

复用性(测试性)

VIPER > MVP > MVVM > MVC

iOS开发中MVC的设计原则,其实倾向于MVP,但是在实际开发中,由于View/ViewController的生命周期问题,难于拆分,故会形成‘View/ViewController <-> Model’的模式,因此形成了MVP,将数据处理,复杂的逻辑放在Persenter中。MVVM可以理解成MVP,不过为了开发便利性,添加了事件数据的双向绑定(借助RAC)。而VIPER由于Router跳转,更适合组件化开发架构,

posted @ 2018-11-24 14:53  jisa  阅读(177)  评论(0编辑  收藏  举报