模块化是什么?
把APP/SDK拆分成高内聚,低耦合的模块,称之为模块化。每一个模块都可以独立开发和测试,验证功能和代码的可用性。
模块化有些什么优点?
- 解耦,减小代码复杂度,提高可维护性。
- 提高代码质量。每块代码逻辑清晰,并且可以单独测试,质量能够得到保证。如果某一个功能要修改,只需要更新其中某一个模块即可,其他模块不受影响。
- 提高团队工作效率。每位小伙伴独立维护一个或几个模块,权责分明。同一个模块沉淀时间较长,可以迅速解决问题。
- 代码灵活性。对于模块内,可以根据具体情况,采用自己的架构设计MVP,MVVP。选用自己的开发语言OC,swift,C/C++等。非常自主。
- 代码复用性。如果需要新做APP,那些公共基础模块或者公共功能模块,都可以完全共用代码。完全可以保证代码质量。
模块化如何实施?
根据目标来分,可以分为几个大阶段
1. iOS基础组件模块化
2. iOS业务模块化拆分
3. 模块化独立化编码和测试
4. 自动化测试和持续集成
5. 全平台模块化
- 依赖的外部服务
- 公司内部git服务(第3阶段开始)
- Jenkins环境(第3阶段开始)
- 大神们关于组件化的文章(iOS)
01 iOS 组件化 —— 路由设计思路分析--冰霜
02 蘑菇街 App 的组件化之路--Limboy
03 蘑菇街 App 的组件化之路·续--Limboy
04 iOS应用架构谈 组件化方案--casa
05 在现有工程中实施基于CTMediator的组件化方案--sasa
06 iOS组件化思路-大神博客研读和思考
网友评论