LearningNotes (10,000+ stars)
这个库全方位的列出了 Android 开发者需要掌握的知识。总共分为六大部分,第一部分是 Android 基础、设计模式,第二部分是 Java 基础、JVM、Java 并发,第二部分是数据结构和算法,第四部分是计算机网络和操作系统,第五部分是一些经典书籍的读书笔记,第六部分是一些知名互联网公司的面试经验的分享。
这个项目对于初中级的 Android 开发来说,算是一份比较全面的学习和参考资料了。
https://github.com/francistao/LearningNotes
AndroidNote (6,000+ stars)
这是一位 Android 开发者(GcsSloop)的学习笔记,记录了作者在学习过程中遇到的问题以及一些经验总结,其中包括自定义 View、源码解析、一些开发技巧以及工具的使用等等。
作者同时也是一个开源社区的积极贡献者,开发了不少开源库,虽然很多都不再维护了,但是可以作为不错的学习材料,比如自定义 View 方面。
https://github.com/GcsSloop/AndroidNote
Android 开源项目源码解析 (6,000+ stars)
这应该是过去几年最受关注的 Android 开源项目源码解析的项目了,由著名的 Trinea 发起,几十位 Android 开发界大佬参与撰写。
已经完成源码解析的项目有:Volley/EventBus/Dagger/PagerSlidingTabStrip/DynamicLoadApk 等等。虽然目前来看很多项目都有点过时了,但是它依旧是最好的源码解析类的项目,是大多数想要进阶的同学的最佳选择。
https://github.com/android-cn/android-open-project-analysis
android-best-practices (17,000+ stars)
最后这个项目是一些 Android 开发中的指导性原则,可以帮助我们避免重复造轮子。
这个项目和前几天推荐的 Android 开发 tips 的项目类似,但是我觉得这个项目中提到的一些方法同样很有实践意义,都是非常实用的建议,唯一的不足之处是只有英文版,可见学好英语有多重要。
https://github.com/futurice/and
原文地址: https://zhuanlan.zhihu.com/p/55939504