客户端架构设计及应用|青训营笔记

75 阅读1分钟

这是我参与「第四届青训营」笔记创作活动的第8天

客户端架构设计及应用

架构面临的问题

产品的生命周期:

image.png

需要解决的问题:

  • 架构设计是为了解决特定领域不同发展阶段的业务问题
  • 不同领域的架构有明显的技术差异,但也有很多相似性
  • 架构不仅面临技术挑战,还要应对组织业务膨胀的熵增
  • 移动端需要利用有限的设备资源设计符合小屏幕的架构

常见的架构手段

MVC架构:

image.png

MVP架构:

image.png

MVVM架构:

image.png

架构模型对比: image.png

AOP:面向切面的编程思想

image.png

IOC:控制反转

image.png

  • 不同架构手段的共同目标是高内聚低耦合
  • 找到适合业务场景的架构而不是炫技滥用
  • 一个复杂的系统是多中架构模型的组合体

架构演进的例子

image.png

  • 架构设计强调简约适用,结构是清晰的
  • 架构随业务发展由简单变得复杂是规律
  • 没必要最初用复杂架构来解决简单问题
  • 需要用规范持续重构来对抗代码的腐朽

成为优秀架构师

定义问题->确定架构->方案落地->结果复盘

  • 认清问题:分类、分级
  • 勤于编码
  • 架构追求
  • 技术基建:工作流程已使用,品质优化可复制,质量基建强约束,整体架构高可用
    
  • 多个业务:业务之间低耦合,扇入扇出标准化,业务集合可维护
    
  • 单个业务:具备好的扩展性,支持傻瓜式集成,宿主依赖接口化
    

客户端架构设计及应用|青训营笔记