新年的第一篇文章,没想到自己又回来了,经过慎重的考虑还是决定再讲一期《效能优化》。虽然去年刚发表过 《以后,江湖再见了》,看上去似乎有点出尔反尔,但我个人觉得,对大家和我自己都有益的事情还是可以做的。首先先解释一下,为啥是效能优化而不是性能优化,我自己在腾讯的效能组担任客户端开发,讲起来可能会得心应手些,其次效能优化往往是包含性能优化,不光会涉及到性能优化,还会涉及到持续集成持续交互,如何提升研发效率,自动化测试等等。
关于我们自己的《效能优化》课程可能会为期一年,这也是我最后还能拿得出手的一点内容,也就是说 2021 年我们就只围绕这一个专题转。前提先声明一下,这也是我讲的最难的一门课程,因为涉及的范围会非常的广,基本上我之前所讲的内容都会涉及到,主要是大家要熟练掌握 Framework 层源码和 C++ 的内容。考虑到大家的层次水平不一的情况下,很多东西我不会细讲,但是又怕大家学起来模糊用不到工作中,我所讲的内容都会带大家自己实现。比如,我们其中我们会讲到《Gradle 插件 + ASM 字节码实战》,对于 Gradle 的语法基础,我可能只会稍微带大家看看,因为这些东西我相信很多同学都比较熟悉,其次就算不熟悉大家也可以找些书籍来看,但对于字节码阅读字节码加载这些底层的东西我就可能会细讲。再比如我们会讲到《 Java 与 Native 层崩溃捕获》,中小型企业一般都是用第三方的,大公司都是会自己实现一套的,因此我也会带大家来分析原理并且手写,但是对于 Linux 内核与 C/C++ 的基础,大家要自己去花些时间回顾一下之前所讲的内容。
说到这里我们再聊些题外话,这里有一篇文章 《Android 平台 Native 代码的崩溃捕获机制及实现》 ,这样的一个文章深度,大家觉得几年工作经验能达到这样的程度?我特意查了一下这个同学的企业微信,目前已转岗到了微信部门,这是三四年前写的文章,按照推算达到这样的一个深度,大概在两三年工作经验左右,说起来惭愧我自己两三年工作经验还远没达到这样的一个深度。
关于上课我们依旧还是采取直播敲代码的形式进行,时间上我们是周日晚上八点开始,至于一周能不能讲一次课,这个要看我上班的情况,如果不是很忙就一定会准时跟大家来分享。
01.Gradle 插件 + ASM 实战 - JVM 虚拟机加载 Class 原理
02.Gradle 插件 + ASM 实战 - Gradle 插件基础
03.Gradle 插件 + ASM 实战 - ASM 字节码插桩基础
04.Gradle 插件 + ASM 实战 - 监控图片加载告警
05.异常处理 - 如何打造一个不闪退的 App
07.异常处理 - Native 闪退堆栈信息解析
09.卡顿监控 - ANR 信息捕捉
10.卡顿监控 - 慢函数与掉帧检测
11.卡顿监控 - Matrix 最佳实践方案
13.线程监控 - 线程创建底层源码分析
......
...