0%

模块化-1 改造计划

随着业务发展,项目代码和开发人员迅速增多,跨团队业务合作、编译速度慢,团队沟通成本高的问题逐渐出现。基于现状做了简单的调研,准备在项目中推动模块化的开发方式。

App模块化的目标是告别结构臃肿,让各个业务变得相对独立,业务模块在组件模式下可以独立开发,而在集成模式下又可以变为依赖包集成到“app壳工程”中,组成一个完整功能的APP。

模块化开发的好处

  • 公用功能,不用重复开发、修改,代码复用性更强
  • 独立运行,提高编译速度,也就提高了开发效率
  • 更利于团队开发,不同的人可以独立负责不同的模块
  • 有利于跨团队合作

模块化要解决的问题

  • 模块间页面跳转;
  • 模块间事件通信;
  • 模块间服务调用;
  • 模块的独立运行;

整体规划

其实模块化开发网上已经有很多很成熟的方案,我们针对自己的业务做了一些改进。
整体将项目分为基础lib、业务lib、功能feature、app主模块。功能模块之间不能互相依赖,并能独立运行。功能模块可以暴露bridge接口模块给其他模块调用,并且功能模块只能暴露一个接口类给其他模块,方便统一管理(比如其他模块需要获取设置模块的配置),严格避免bridge接口放到comn模块。模块间通信采用bus;模块之间的数据获取bridge暴露接口的模式;页面同学采用路由的方式.
结构图