这是我参与「第四届青训营」笔记创作活动的第8天
客户端架构设计及应用
架构面临的问题
产品的生命周期:
需要解决的问题:
- 架构设计是为了解决特定领域不同发展阶段的业务问题
- 不同领域的架构有明显的技术差异,但也有很多相似性
- 架构不仅面临技术挑战,还要应对组织业务膨胀的熵增
- 移动端需要利用有限的设备资源设计符合小屏幕的架构
常见的架构手段
MVC架构:
MVP架构:
MVVM架构:
架构模型对比:
AOP:面向切面的编程思想
IOC:控制反转
- 不同架构手段的共同目标是高内聚低耦合
- 找到适合业务场景的架构而不是炫技滥用
- 一个复杂的系统是多中架构模型的组合体
架构演进的例子
- 架构设计强调简约适用,结构是清晰的
- 架构随业务发展由简单变得复杂是规律
- 没必要最初用复杂架构来解决简单问题
- 需要用规范持续重构来对抗代码的腐朽
成为优秀架构师
定义问题->确定架构->方案落地->结果复盘
- 认清问题:分类、分级
- 勤于编码
- 架构追求
-
技术基建:工作流程已使用,品质优化可复制,质量基建强约束,整体架构高可用 -
多个业务:业务之间低耦合,扇入扇出标准化,业务集合可维护 -
单个业务:具备好的扩展性,支持傻瓜式集成,宿主依赖接口化
客户端架构设计及应用|青训营笔记