前言
曾有人这样形容架构师的重要性: 架构师的工作就像是他打造一棵树的主干和枝干,然后程序员们让这棵树上长出树叶和果实
既然架构师是「灵魂人物」,那么,成为一名架构师,需要具备怎样的技能?
本篇我们来探讨一下,Android架构师的一些通用技能;那好小本本准备发车。架构师学习就是扫盲,看看还有那些你不会的技术。可以自己进行补习;偷偷打枪的不要,卷死他们嘿嘿!
架构师通用技术
我这里分为三部分:数据结构与算法、代码设计准则、设计模式的运用。
1、数据结构与算法
1.1常用数据结构
线性表
- ArrayList源码分析
- 项目实战:手写实现ArryList集合
链表
栈
队列
树
映射表
- HashMap源码解读与实战
- HashMap的扩容机制剖析
- Hash函数,Hash值
- 数组+链表实现原理
- JDK1.7后的红黑树算法详解
- 项目实战e手写实现HashMap集合与扩容机制
1.2排序算法
- 比较类排序算法
- 交换排序算法
- 希尔排序排序算法
- 非比较类排序算法
- 归并排序排序算法
- 计数排序算法
- 桶排序算法
- 八大内部排序项目实战场景分析
2、代码设计准则
2.1六大设计原则
- 单一职责原则
- 开闭原则
- 里氏替换原则
- 依赖倒置原则
- 接口隔离原则
- 迪米特法则
2.2设计模式
结构型模式
桥接模式
- WMS源码解析
适配器模式
- RecycleView源码解析
装饰器模式
- I/0文件操怍
- RxJava操作符组合与扩展
- hook系统级handler与aid
代理模式
- Retrofit源码解析
- Binder源码解析
- SDK版本切换
外观(门面)模式
- Gide/retrft码解析
组合模式
- View Tree设计思想
- WMS中windowState设计思想
享元模式
- 内存泡共享性能优化
- Handler源码解析
创建型模式
建造者模式
- 淘宝任务调度系统设计
- Retroft源码解析
单例模式
- SDK封装原理
抽象工厂模式
- dagger2源码解析
- 网络module时装原理
工厂方法模式
- Retroft源码解析
原型模式
- Intent设计思想
模板方法模式
- Actity生命周期源码设计思想
行为型模式
策略模式
- Rxjava封装Retrofit思想
- APT注解处理器实现原理SPI机制
观察者模式
- Jetpack Lifelcycle/Livedata/databinding
- rxjava
责任链模式
- okhttp源码解析
命令模式
- 事件输入系统设计
访问者模式
- ASM设计思想
迭代器(游标)模式
- JDK集合类访问设计
备忘录模式
- Activity数据恢复设计
状态模式
- Wif状态管理设计
中介者(调停者模式)
- keyguard锁屏设计
- WMS源码解析
解释器模式
- PackageParser设计思想
3、设计模式的运用
这里不多做说明,更多在于知识的灵活运用。
以上就是Android架构师的通用技能;我做一部分举例出来。希望能够帮助大家参考,了解自身不足的技能进行补习。说到补习知道我这里推荐华为高级架构师整理的一份《架构师技能进阶电子册》;有需要进阶自己技术的可以领取参考学习。
文末
对于Android架构师,大家都觉得很难。没错就是很难;需要掌握的东西太多,但是总有人会成为架构师,这是为什么?因为有准备技术靠慢慢累积的,树立好目标不急不躁的学习;总有一天来到顶峰。
市场不需要那么多架构,但是技能越厉害越不容易淘汰,与薪资成正比。至于架构师名分我想与薪资没有大多关系。所以我们的初衷还是进阶自身技能。
网友评论