许多同学反映,自己看源码边看边忘,找不到正确的阅读姿势。我本人开发多年,也对阅读源码这件事深有感触:
- 初期我阅读源码就是记流水账,每篇文章都对着源码一行一行的加注释,只关注了底层的细节,没有形成高层次的认知;
- 中期我开始结识一些业界大牛,在于他们交流的过程中,设计理念逐渐成长起来,自己也开始养成思考的习惯;
- 到了后期,能力更进一步,对设计理念有了更深刻的理解,也会对不合理的地方提出质疑。
根据自身多年经验,我整理了一套阅读源码的方法:
1.了解这款软件的使用场景、以及架构设计中将承担的责任。
2.寻找官方文档,从整体上把握这款软件的设计理念。
3.搭建自己的开发调试环境,运行官方提供Demo示例,为后续深入研究打下基础。
4.先主干流程再分支流程,注意切割,逐个击破。
总的来说,我们阅读源码时,要从全局了解待学习框架能解决什么样的问题,整体架构设计与思想是什么,主要包含哪些要点。
如果你想快速提升,又苦于找不到优秀的资源,可以看看这篇最新《Android开发源码精编解析》,来阅读优秀源码,更好地学习框架源码,领略其中核心思想。
注:有需要的伙伴可点击文末卡片获取!
目录
1.深入解析微信MMKV源码
2.深入解析阿里巴巴路由框架ARouter 源码
3.深入解析AsyncTask 源码(一款 Android 内置的异步任务执行库)
4.深入解析Volley 源码(一款 Google 推出的网络请求框架)
5.深入解析 Retrofit源码
6.深入解析OkHttp 源码
7.深入解析
8.深入解析Okio源码(一套简洁高效的 I/O 库)
9.深入解析SharedPreferences源码
10.深入解析EventBus 源码
11.Android 自定义注解初探
12.View 的工作机制源码分析
13.Android触摸事件分发机制源码分析
14.Android按键事件分发机制源码分析
15.深入解析 Handler 源码
16.深入解析Binder源码
17.深入解析JNI源码
18.深入解析Glide源码
19.RxJava原理及如何封装使用
20.LeakCanary核心原理源码浅析
21.插件化架构定义及插件化架构的实践思路分析
22.热修复设计之热修复原理
由于文章内容比较多,篇幅有限,资料已经被整理成了PDF文档,有需要进阶提升的伙伴可点击文末卡片免费领取《Android开发相关源码精编解析》!
最后
阅读源码是个枯燥的过程,是件短期内低回报的事情。但所谓滴水石穿,只要持之以恒,坚持一段时间之后,所获得的最终成就便是巨大的。
了解项目代码是参与(开源)项目的第一步,希望这篇文章能帮助你提高源码阅读与理解的能力,快速提升自我技术水平和编程功力,参与到心仪的项目中去。