很多Android的小伙伴在做了多年的开发之后,始终搞不清楚达到Android架构师需要何种技能,我们对比着Android高级工程师来说明。
我们先来看一下Android高级工程师的招聘要求
职位描述:
Responsibility
1. Android平台功能模块的设计与开发
2. 移动端开发框架的研究与设计
3. 移动端技术规范的制定与推广
4. 移动端技术培训
Requirements
1. 重点高校本科及以上学历,计算机及相关专业毕业
2. 精通java语言,熟悉面向对象设计原则。
3. 有至少1年的Android开发经验,有app上线的优先考虑
4. 具有较强的编程和解决问题的能力,具有较好的数据结构及算法基础功底
5. 对移动互联网产品有浓厚的兴趣
其实简单点,
就是能够独立开发APP =有APP上线
APP有设计感 = 懂设计模式设计原则
项目经验丰富 = 较强的编程和解决问题的能力
内存和性能优化 = 具有较好的数据结构及算法基础功底
GitHub 开源项目 = 对移动互联网产品有浓厚的兴趣
在我看来
1.Android高级工程师 + 全局眼光 = 架构师
所以架构师必备的一项技能就是要放眼全局,做的设计要能够思虑长远,如何做到?
多看Androd源码,从系统运行的角度思考你写的东西,在Android世界是怎么存在的。
2.认知上要达到WHAT HOW WHY三阶段的WHY的程度
打比方说,我们使用了第三方的库,最开始WHAT阶段是知道它怎么用,可以解决什么问题
然后HOW阶段,我们理解了这个库是怎么运行的,内部的架构是怎么样的,高级工程师多停留在这个阶段。
最后的WHY阶段,为什么这么设计?有没有更好的设计?
当你到了WHY阶段了,你就积累了大量的设计源泉。
3.行动上要多用架构解决实际问题
在Android高级工程师积累的基础上,解决问题的时候多以架构设计来解决,就需要
精通设计模式,不拘泥于设计模式,设计模式是在遵循Java设计原则的前提下,在大量的应用实践中总结出来的,犹如武功招式,
这个阶段要无招胜有招,多重招式叠加制敌。
还包含用架构思路来解耦,组件化,动态加载
这里为大家献上一个Android架构师的学习路线
首先是Java语言进阶和Android相关技术内核;
其次是各大体系;
还有移动架构师方面;
以及现在挺火的微信小程序;
HYBIRD开发;
图片上传后可能不是特别清晰了,如果有看不清楚需要高清的私我。我看到后会统一回复