转载自公众号AndroidDeveloper;
如何快速入门和进阶安卓开发,是很多技术小白的疑问。大家都知道,Android开发要学的技能非常多,技术更新速度还快,但是总的来说:掌握最核心的技术,最规范的开发流程,成为专业、出色的安卓开发工程师也不是遥不可及。
梁建作为网易云音乐的安卓主程,经常会碰到准备入行安卓开发的同学询问关于如何入门和进阶。
梁建 | 网易云音乐安卓主程
网易专业委员会成员,他带领团队从无到有开发网易云音乐,有非常丰富的项目开发和管理经验,对Android系统、交互设计有深刻的理解。
在他看来,新手一般会遇到以下几个问题:
1、 如何系统学习Android 开发知识?
2、 Android 面试都会问些什么问题?
3、 初级/高级/资深的进阶之路是怎样的?
4、 面对技术更新如此迅速,我该如何应对?
其实这每一条的背后,都涉及到合格的安卓开发人员,其开发知识体系是怎样的,需要学习哪些方面的知识,进而符合公司的日常开发需求。
为了解决大家的疑问,梁建专门整理了一张思维导图,用来梳理合格的安卓开发工程师应该具备的开发知识体系。
↓↓ Android知识体系框架 ↓↓
接下来,我们具体讲一讲各个部分的内容。
四大组件
UI 设计
常见View的使用
网络
线程和进程
数据存储
进阶学习
编程基础
网络协议
数据库
开源框架
测试基础
任何一个开发都不能把产品的质量完全依赖于专业的测试人员,相反,应该直接把上行质量作为自测目标。所以,开发人员需要学习必要的测试方法,常见的测试方法包括:
其他补充学习
讲完知识体系,下面讲讲作为一个新人如何快速入门和进阶的一些经验。想要快速入门,可以尝试以下的方式:
1. 买一本通俗易懂的书籍,快速看完;
2. 查看并模仿官方samples,这可以让你了解安卓的样子;
3. 实践一个感兴趣功能
入门之后,进阶可以分为三步:
第一步进阶:系统学习官方training和guide部分,仔细看完获益匪浅
第二步进阶:引入开源项目简化开发,并查看源码了解实现;
第三步进阶:当你慢慢熟悉开发之后,这个时候你就需要对view的内部世界更加了解,查看常见组件view等内部实现,查看Activity ManagerService, Android进程启动,低内存杀进程等运行机制,学习安卓运行环境,学习各种调优工具进行有化,
推荐资料
1. 历年Google I/O大会视频
2. 微信公众号:Google开发者
3. 国人整理的学习列表
https://github.com/Trinea/android-open-project
https://github.com/Freelander/Android_Data