关键词:架构理论和模型的概述
这是我参与「第四届青训营 」笔记创作活动的第15天。本文主要对架构,包括架构的演进更替、分类、优缺点进行学习与梳理。
常见的架构手段
架构演进:描述一个产品在生命周期的不同阶段,架构如何变化。
问题
不同产品阶段
不同端的差异
安卓客户端架构
典型的客户端架构Flutter
手段
标准的架构模式有多少种?三种
JAVA虚拟机中,B是最好的选择
- A会被打断,在部分虚拟机上会跑错。
- B用了volatotle关键词,保证CPU到内存的同步
- B与C哪一个更优,得看设计场景
MVC视图控制器的模型
数据和视图要解耦,数据庞大,不适合大数据
MVP
P是表现层
当数据有更新时,通过表现层去更新模型的
按钮的响应不是直接调用模型的,通过表现层的present去调用模型的累加器。数据更新以后,要根据表现层再去更新UI。
MVVM
MVC、MVP、MVVM
编程思想 OOP、AOP
AOP切面,所有人都要吃饭
(常用)控制翻转IoC
- 直接依赖
2. 依赖翻转在于
- 将B、C、Z注入控制反转IoC容器,它是一个对象,托管了BCZ对象的生命周期
- 翻转体现在不是A主动控制IoC中的,而是IoC主动去注入到A对象中去的。
例子
实例SPI(IoP的例子):
小结:
大的业务架构
- 分层架构
优点:
- 结构简单清晰,易于理解和管控
- 层级关系适合不同技能人员分工 缺点:
- 对层级管控要求严格,灵活性低
- 为了解耦容易拆分出很多中间层(最开始3、4层,后来几百层)
- 服务化架构
3. 事件驱动架构
哪一些机制可以互通信息:广播、handle
- 微内核
- 领域驱动(微服务) 分开去解决特定问题
负载均衡
- 减缓衰老
重点
例子

重点
如何成为优秀架构师
顺序:定义问题 确定架构 方案落地 结果复盘
分类
分级
热更新与插件一起用?分为什么级别等等?
浅追求