1.概念
①模块化是一种处理复杂系统分解成更好的可管理模块的方式。模块化开发是将一个项目拆分成多个模块, 在开发过程中各个模块可以相互依赖也可以单独调试,最终发布的时候将各个模块打包成一个apk.。
②模块化的核心思想理念符合软件开发领域中的低耦合,各个模块的升级改动,对于其他模块的影响是非常小的,在最大程度上提升模块的可插拔属性。
2.为什么要进行模块化开发?
项目结构清晰,在review或者版本迭代时候一目了然。
模块间解耦,各模块业务分离。
便于多团队并行开发,提高开发效率。
编译时间减少,可单独编译某一模块。
3.模块化项目如何搭建呢?
3.1 搭建方向
①功能层分离,首先需要理清业务,再动手拆分业务,将项目按照功能做拆分,分别构建模块。
②系统层分离,将网络加载、图片加载,常用工具类等底层通用方法单独分出来作为一个模块,这个模块对于其他模块都是可见的。
③公共层分离,在开发过程中会有大量的实体类、自定义view等会被各个模块使用,但是如何这些放到系统层则会影响通用性,故还需要拆分出一个公共模块。
3.2 搭建示例
4.模块化开发难点
①功能细化拆分
②依赖统一管理
③模块间通讯
④需要循序渐进展开,尤其是项目重构