diff --git a/blogs/Interview/Java.md b/blogs/Interview/Java.md new file mode 100644 index 0000000..fa12638 --- /dev/null +++ b/blogs/Interview/Java.md @@ -0,0 +1,24 @@ +--- +深入理解 Java 之 反射 +--- + +### 目录 + +1. 反射的定义以及基础使用 +2. JVM 是如何实现反射调用的? +3. 反射调用的开销在哪? +4. 如何优化反射性能? +5. 参考 + +### 反射的定义以及基础使用 + + + +### 参考 + +[JVM是如何实现反射的?](https://time.geekbang.org/column/article/12192) + +[Java反射原理简析](http://fanyilun.me/2015/10/29/Java%E5%8F%8D%E5%B0%84%E5%8E%9F%E7%90%86/) + +[关于反射调用方法的一个log](https://www.iteye.com/blog/rednaxelafx-548536) + diff --git a/blogs/Plans/探究 Booster.md b/blogs/Plans/探究 Booster.md new file mode 100644 index 0000000..cbbdab4 --- /dev/null +++ b/blogs/Plans/探究 Booster.md @@ -0,0 +1,30 @@ +--- +Booster 探究之路 +--- + +![](https://i.loli.net/2019/09/04/6safQDUGKu4Woqm.jpg) + +> Booster 是一款专门为移动应用设计的易用、轻量级且可扩展的质量优化框架,通过动态发现和加载机制提供可扩展的能力。它不仅仅是一个框架,而且还内置了很多质量优化工具。 +> +> Booster 主要由 Transform 和 Task 组成,Transform 主要用于处理字节码,Task 主要用于处理资源,为了满足特异的优化需求,Booster 提供了 Transformer SPI and VariantProcessor SPI 允许开发者进行定制。 + +### 构想 + +Booster 是滴滴开源的移动 APP 质量优化框架,开源地址:[Booster](https://github.com/didi/booster)。 + +对比 Matrix,相比之下学习 Booster 的学习曲线没那么陡峭。只需要简单的了解 Gradle Plugin、Transfrom、ASM 就可以上手了,如果你没这些基础也没有关系,只要愿意去学,我们完全可以花费前两周时间好好去补这一部分基础知识,大家也可以互相把好的资料分享出来,让你避免走弯路。 + +### 时期安排 + +暂定为两个月,如果你基础很好或者你很熟悉 Booster,欢迎加入,请带带我 :) + +![](https://i.loli.net/2019/09/04/tykZqwsj6dLPWUM.jpg) + +### 期望结果 + +1. 熟悉 Kotlin 函数式编程 +2. 掌握 Gradle Plugin 的编写、Transfrom / Task 运用、以及字节码操作库 ASM 的使用 +3. 对 APP 质量监控 / 性能优化有进一步理解 + +最后希望每一个小伙伴不仅可以说出 Booster 的实现原理,还能都可以**从零搭建**自己的 APM 框架,然后实现 Booster 里面的几个小模块。 +