一个老鸟发的公司内部整理的 Android 学习路线图
看到一篇不错的Android学习路线图,故转载分享之.
原文不是表格,感觉看起来不是那么直观,所以就重新弄了一份表格版的,希望对大家有所帮助
程序设计
知识点 | 链接或书籍 | 进阶 | |
---|---|---|---|
Java | 基本语法(如继承、异常、引用、泛型等) | Java核心技术 卷I(适合入门) | Effective Java中文版(如何写好的Java代码) Java解惑 (介绍烂Java代码是什么样的) |
多线程、并发 | Java并发编程实战 (系统全面的介绍了Java的并发,如何设计支持并发的数据结构) | ||
Java 7 | Java程序员修炼之道 (详细的介绍Java 7 的新特性) | ||
Java 8 | 写给大忙人看的Java SE 8 函数式编程思维 |
||
Java虚拟机 | 深入理解Java虚拟机 (并不是那么难,Java程序员都该看看) | ||
性能优化 | Java性能优化权威指南 (后面的章节好像用处不大,前面有些部分还是值得看) | ||
算法与数据结构 | 算法时间复杂度、空间复杂度的基本认知; 熟悉常用数据结构:链表、队列、散列表、树等; 递归、分支等基本思想; 常用算法应用:排序、查找、比较等 |
数据结构与算法分析 (涵盖面比较全、示例是Java语言) 算法设计与分析基础 (实用主义的典型、偏算法设计) 编程珠玑 (实践型算法数据) |
|
操作系统 | 对Linux/OS的基本认知 Linux的常用命令 |
鸟哥的Linux私房菜 Linux内核设计与实现(原书第3版) (很精炼的语言描述清楚了内核算法) |
|
网络 | Http/Https TCP/IP |
图解HTTP 图解TCP/IP |
TCP/IP详解 |
Android | 四大组件(服务、广播、ContentProvider、页面容器) 基础UI组件(ListView、ViewPager) 异步任务机制(AsyncTask、Handler、线程池) 布局优化(层级、绘制、碎片化处理) 图片加载(Bitmap、缓冲区) |
UniversalMusicePlayer (通过学习一个音乐播放器的代码能很快了解四大组件) Android Training官方课程 Android一些重要知识点解析整理 Android UI/UX库(各类常用组件及扩展组件的集合) Picasso 、 Glide (两个图片加载库) The Google I/O 2015 Android App (Google大会官方的App,适合学习各类实现) Android开发技术前线 (定期翻译、发布国内外Android优质的技术、开源库、软件架构设计、测试等文章) |
第三方库集合 (列举了常见的各方向第三方库) |
软件工程
知识点 | 链接或书籍 | 进阶 | |
---|---|---|---|
基础工具 | IDE、Git、Maven | AndroidStudio Git权威指南中文手册 |
|
软件质量 | 代码整洁 代码质量 代码重构 |
编写可读代码的艺术 (来自Google工程师,专注于代码可读性) 代码整洁之道(使用面向对象+敏捷开发原则编写清晰可维护的代码) 重构-改善既有代码的设计 (学习改善已有代码) 重构手册 (改善代码的实际操作) |
|
设计模式 | 23种常见设计模式 | 大话设计模式 Head First设计模式(两本入门级的设计模式书籍) |
设计模式-可复用面向对象软件的基础(设计模式在实际中的应用) |
敏捷开发 | 解析极限编程 敏捷开发的艺术 |
敏捷软件开发-原则、模式与实践 | |
专业开发 | 程序员职业素养 更高效、更实效 |
程序员的是职业素养 程序员修炼之道-从小工到专家 |
|
思考人生 | 黑客与画家 (硅谷创业之父Paul Craham 的文集,主要介绍黑客及优秀程序员的爱好和动机) |