Moosphan / Android-Daily-Interview

:pushpin:每工作日更新一道 Android 面试题,小聚成河,大聚成江,共勉之~

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

2019-11-01:什么是AOP?在Android中它有哪些应用场景?

Moosphan opened this issue · comments

2019-11-01:什么是AOP?在Android中它有哪些应用场景?
commented

AOP,面向切面编程,Android里面大多是使用动态代理技术来实现
在日志统计,登录信息check,网络是否连接等场景有应用,主要是用来避免每次做check时都写重复的逻辑代码。

AOP,针对切面编程,Android里面大部分是使用动态代理技术来实现
在日志统计,登录信息检查,网络是否连接等场景有应用,主要是避免每次检查时都写重复的逻辑代码。

Android 可以使用 AspectJ 实现 AOP 编程, 实现原理是编译时在注解处嵌入代码,侵入性小

commented

aop的实现有静态代理和动态代理,静态代理有静态代理模式,基于Ajc编译器的AspectJ,
动态代理有JDK动态代理,在android的实现是InvicationHandler,需要实现接口,该有CGlib 实习方式是创建子类来继承源类。
应用场景有各种状态监测比如登录、网络、权限等。日志埋点,性能分析。

面向切面编辑 只要场景有埋点 日志分析