# 深入研究的知识点
现在Android技术发展到了中后期,针对技术的考核不再纠结于知识点,或者说技术人员之间在知识点上已经无太大区别,这个时候面试更加倾向于知识深入的能力、技术思维等,比如面试中面试官经常会说,你有没有研究的一些深入的点,如果没有准备经常会一脸懵逼,也不知道这个代表什么意思。
我们获取知识,基本有两种,一种是主动根据知识图谱学习,还有就是根据经历的业务,这两种方式能使某一个点的深入研究达到业界水平,基本上也是由于业务本身的需要,像一些阿里的高P,基本都是跟着淘宝的黄金十年成长起来的。大部分人都是没机会接触到这样的业务,但并不代表能力不行。下面我会举几个值得深入研究的点,供大家参考。
TextView性能问题
直播间聊天框或者大量图文混排业务,使用原生TextView会出现性能问题,相关研究方案如下:
- TextView性能瓶颈,渲染优化,以及StaticLayout的一些用处 (opens new window)
- [译]Instagram是如何提升TextView渲染性能的 (opens new window)
- TextView预渲染研究 (opens new window)
日志性能
日志相关的可以参考微信的研究,这里面有很多可以具体深入的点:mmap、压缩算法等,甚至可以扩展到Linux系统是如何做存储的,相关的一整套方案
研究过大型开源项目源码
深入阅读过一些大型开源项目的源码,也是一种可深入的能力体现
内存优化
内存优化也可以作为一个专项研究,像内存分类、线程消耗等等
垃圾回收
java.lang.UnsatisfiedLinkError
如果项目中大量使用到so库的话,可能会经常碰到这个error,可以从这个点下去研究so库是如何加载,以及如何解决这个问题
浏览器相关
性能优化:
WebView性能、体验分析与优化 (opens new window)
- 全局的webview,预加载
- 初始化、加载数据并行
- DNS采用和客户端API相同的域名
70%以上业务由H5开发,手机QQ Hybrid 的架构如何优化演进? (opens new window)
安全:
简析Chrome和Webkit的渊源
Android Chromium WebView学习启动篇 (opens new window)
Webview 渲染机制
视频
多进程