组件化实现总结

知乎 Android 客户端组件化实践
安卓AOP三剑客:APT,AspectJ,Javassist
AOP:APT,AspectJ,Javassist/Asm

aop工具:ASM、APT、AspectJ、Javassist

一、组件化思想:
1、对架构分层,使用注解,定义接口,和对接口的实现,进行解耦
2、Gradle Transform 扫描项目所有代码、包括二进制
3、使用aop工具在编译期间(扫描类注解),在class生成dex之前,找到带有注解的class,进行生成对应的类class。

**二、AOP工具:**ASM、APT、AspectJ、Javassist
在这里插入图片描述
执行阶段:
APT在compile任务前,修改java文件;
AspectJ在java --> class阶段,修改java代码;
Javassist和asm,都是修改的.class

发生的具体函数
APT Processor -> process{…}
AspectJ javaCompile.doLast{ … }
Javassist和asm MyTransform -> transform{ … }

发布了18 篇原创文章 · 获赞 2 · 访问量 3147

猜你喜欢

转载自blog.csdn.net/shiningdreamercaihua/article/details/104542942