一张思维导图,告诉你Android新手如何快速入门
2016-12-25 本文已影响966人
菜刀文
作者: 梁建
梁建作为网易云音乐的安卓主程,经常会碰到准备入行安卓开发的同学询问关于如何入门和进阶。
梁建网易专业委员会成员,他带领团队从无到有开发网易云音乐,有非常丰富的项目开发和管理经验,对Android系统、交互设计有深刻的理解。
在他看来,新手一般会遇到以下几个问题:
- 如何系统学习Android 开发知识?
- Android 面试都会问些什么问题?
- 初级/高级/资深的进阶之路是怎样的?
- 面对技术更新如此迅速,我该如何应对?
其实这每一条的背后,都涉及到合格的安卓开发人员,其开发知识体系是怎样的,需要学习哪些方面的知识,进而符合公司的日常开发需求。
为了解决大家的疑问,梁建专门整理了一张思维导图,用来梳理合格的安卓开发工程师应该具备的开发知识体系。
↓↓ Android知识体系框架 ↓↓

接下来,我们具体讲一讲各个部分的内容。
四大组件

UI 设计

常见View的使用

网络

线程和进程

数据存储

进阶学习

编程基础

网络协议

数据库

开源框架

测试基础
任何一个开发都不能把产品的质量完全依赖于专业的测试人员,相反,应该直接把上行质量作为自测目标。所以,开发人员需要学习必要的测试方法,常见的测试方法包括:

其他补充学习

讲完知识体系,下面讲讲作为一个新人如何快速入门和进阶的一些经验。想要快速入门,可以尝试以下的方式:
- 买一本通俗易懂的书籍,快速看完;
- 查看并模仿官方samples,这可以让你了解安卓的样子;
- 实践一个感兴趣功能
入门之后,进阶可以分为三步:
第一步进阶:系统学习官方training和guide部分,仔细看完获益匪浅
第二步进阶:引入开源项目简化开发,并查看源码了解实现;
第三步进阶:当你慢慢熟悉开发之后,这个时候你就需要对view的内部世界更加了解,查看常见组件view等内部实现,查看Activity ManagerService, Android进程启动,低内存杀进程等运行机制,学习安卓运行环境,学习各种调优工具进行有化,
更多文章请关注公众号
