几篇比较好的文章作为扫盲,进阶,感激大牛们的存在
https://www.jianshu.com/p/f671dd76868f
大牛总结了在组件化中很重要的三个大点:
1.基础库(网络请求、图片加载等)的封装
2.路由框架(页面跳转, 服务提供)
3.业务组件的划分和代码隔离
组件化实现的方案:单工程+多module模式。
组件化拆分逻辑:
不错的文章参照:
https://www.jianshu.com/p/9b72404c5ed1
概念解剖:
组件component 是不可拆分的,在App工程上,组件是构成业务或者功能模块的基本单位。原则上,组件与组件之间互不依赖。组件可以被多个业务使用,因此组件具有可复用性
模块module 可以拆分。
组件化、拆分业务后优势:
1.单一职责:开发人员专注于自己的业务依赖倒置:上层业务依赖下层业务,业务依赖组件,业务之间、组件之间不相互依赖
2.接口隔离:业务之间调用数据,通过统一的协议与服务中心交互,不调用业务实际代码代码质量与规范程度明显提高,高内聚、低耦合。
3.业务职责分明,单元测试也更好写。如果业务拆分做得好,可以一个业务一个单独工程编译,不仅大幅提高编译速度,而且业务代码还可以回滚、版本发布等。
app项目的结构是 组件->基础业务->business业务。