03.为什么选VIPER

一: 优点

  • 拆分的职责更细,便于编写测试用例

  • VIPER内部通过Protocol解耦,能灵活应对变化

二: 和MV(X)系列的对比

  • 这里的Presenter和MVP中的不同

    • 这里的P并没有主要负责业务逻辑

    • 主要是用来V/I间传递事件,以及管理一些View交互逻辑

    • I承载业务及数据逻辑

    • I的可测试性会更强

  • VIPER和MVX相比多了几个要维护的东西

    • View事件管理

    • 数据事件管理

    • 事件和业务的转化

    • 总结每个业务用例

    • 模块内分层隔离

    • 模块间通信

三: 好架构应该有的特点

  • 能把代码按职责划分解耦

  • 可测试性

  • 易用,维护成本低,改动成本小

参考

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

Last updated