开原框架组件化

1、什么是组件化,为什么需要组件化

2、集成环境/组件化环境自动部署

3、组件化 子模块交互方式(非ARouter版)

4、组件化 子模块交互方式(ARouter版)

早期的单一分层:

问题1:无论分包怎么做,随着项目增大,项目失去层次感,后面的人接受很难

问题2:包名约束太弱,稍有不注意,就会不同业务包直接相互调用,代码耦合度高

问题3:多人开发在版本管理中,容出现代码覆盖冲突等问题

1、什么是组件化,为什么需要组件化

组件化的意义:不相互一来,可以互相交互,任意组合,耦合度高,自由拆卸,足有组装,重复利用,分层独立

2、集成环境/组件化环境自动部署

我们可以单独创建一个管理的gradle,来管理我们各个模块的相关导入资源,定义一个变量isRealease变量控制正式环境(各个模块依附APP壳运行)测试环境(各个模块可以单独运行)等操作,这个可以自己去找资料学习。

3、组件化 子模块交互方式(非ARouter版)

交互的方式有5种:

1)使用EventBus的方式:缺点:EventBus维护成本太高,不好去管理

2)使用广播的方式:缺点不好管理,都同一发出去了

3)隐士Intent的方式:缺点在AndroidManifest.xml里面配置xml写的太多了

4)类加载的方式:缺点是容易写错包名,不过还算是不错的

5)使用全局Map的方式:缺点这个要注册很多对象

4、组件化 子模块交互方式(ARouter版)

ARouter版需要用到的技术:1、APT技术 2、高级用法JavaPoet 3、组件化项目部署,ARouter原理

1)ARouter需要我们在编译期间帮我们生成需要的文件,所以需要用到APT技术

2)JavaPoet语法,因为我们需要拼凑出需要的类、方法要用到JavaPoet语法

3)ARouter原理:我们得要对于模块进行分组

由于时间匆促,这里讲个大概的概念,之后详细慢慢补充,模块之间如何使用通讯。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值