iOS组件化02

模块化是什么?

把APP/SDK拆分成高内聚,低耦合的模块,称之为模块化。每一个模块都可以独立开发和测试,验证功能和代码的可用性。

模块化有些什么优点?

  • 解耦,减小代码复杂度,提高可维护性。
  • 提高代码质量。每块代码逻辑清晰,并且可以单独测试,质量能够得到保证。如果某一个功能要修改,只需要更新其中某一个模块即可,其他模块不受影响。
  • 提高团队工作效率。每位小伙伴独立维护一个或几个模块,权责分明。同一个模块沉淀时间较长,可以迅速解决问题。
  • 代码灵活性。对于模块内,可以根据具体情况,采用自己的架构设计MVP,MVVP。选用自己的开发语言OC,swift,C/C++等。非常自主。
  • 代码复用性。如果需要新做APP,那些公共基础模块或者公共功能模块,都可以完全共用代码。完全可以保证代码质量。

模块化如何实施?

根据目标来分,可以分为几个大阶段
1. iOS基础组件模块化
2. iOS业务模块化拆分
3. 模块化独立化编码和测试
4. 自动化测试和持续集成
5. 全平台模块化

  • 依赖的外部服务
    1. 公司内部git服务(第3阶段开始)
    2. Jenkins环境(第3阶段开始)
  • 大神们关于组件化的文章(iOS)
    01 iOS 组件化 —— 路由设计思路分析--冰霜
    02 蘑菇街 App 的组件化之路--Limboy
    03 蘑菇街 App 的组件化之路·续--Limboy
    04 iOS应用架构谈 组件化方案--casa
    05 在现有工程中实施基于CTMediator的组件化方案--sasa
    06 iOS组件化思路-大神博客研读和思考

你可能感兴趣的:(iOS组件化02)