作者:yzkgt18688161 | 来源:互联网 | 2023-09-07 20:56
田超凡
原创博文,严禁复制转载,仿冒必究,部分素材转载自慕课网
1.1 软件架构定义和两派之争
软件架构的定义:“架”起需求到落地的桥梁,"构" 建IT新蓝图
软件架构的两派之争:组成派、决策派
组成派:
天下武功出“组件”:代码包、模块、领域、CBM、SOA
软件系统架构:就是描述计算组件和组件的交互
架构设计:拆解、定义、关联组件,画图和实现
决策派:
"决策"山上有真人:架构的真谛是架构决策,是智慧和思维
软件系统架构:是由一个个决策组成的有机整体
架构设计:根据需求、限制决定技术、框架和实现
组成派 VS 决策派
架构图设计
![http://img.mukewang.com/climg/60c81dfe098cb73013720509.jpg](https://img.php1.cn/3cd4a/1eebe/cd5/4283cd4bbba41b87.png)
工作中的区别
![http://img.mukewang.com/climg/60c81e0e097005ac13590653.jpg](https://img.php1.cn/3cd4a/1eebe/cd5/5b97d3b808d031e2.webp)
1.2 大师们眼中的架构
BA大师:结构、元素、内部、外部
BO大师:组件、连接件、约束,需求和理智
G大师:模块、过程、管道、消息、条件
I大师:组件、关系、环境、结构、演化
J大师:元素、接口、子系统、协作、风格
P大师:处理元素、数据元素、连接元素
W大师:决策、方向、过程
Z大师:组件是我的眼,决策是我的手
1.3 软件架构的目的:做IT界的莫扎特
桥梁:从"产品”听众获取灵感
指引:指引“研发"乐队完成演奏
分割:将长篇大作切割成乐章
交互:将乐章和声部交叠协奏
决策:在思考中挣扎,在决策中完美
演进:G小调第40交响曲-悲凉中前进
1.4 软件架构的发展阶段
软件架构的过去:
语言: C、Java、Python、 Go
结构设计:数据结构、设计模式、算法
统一建模:UML、 CBM
软件架构的现在:
多视角:逻辑、物理、应用、技术、功能、部署
体系框架: ABSD、DSSA、 AT、EA、TOGAF
软件架构的未来:
云化: IaaS、PaaS、SaaS资产复 用
演进式架构:拆迁者,修缮者,绞杀者
1.5 阶段小结&面试题
题目:作为架构师, 你的日常工作主要有哪些?
题眼:工作广度;组成和决策;莫扎特6大作用
加分项:方法论完整、新架构框架、新技术框架
题目:作为架构师,有什么推崇的书或者大师
题眼:学习能力、知识体系
加分项:体系书籍、新技术书籍、大师互动分享
题目:你在架构设计过程中碰到的难点?
题眼:案例深度;决策派思路;从莫扎特6大作用出发
加分项:决策依据;理论->实际->理论
附预习笔记:
![](https://img.php1.cn/3cd4a/1eebe/cd5/70be2ca197098d98.webp?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMwMDU2MzQx,size_16,color_FFFFFF,t_70)
![](https://img.php1.cn/3cd4a/9b0d/ae9/2d998ad7838fbf16.jpeg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMwMDU2MzQx,size_16,color_FFFFFF,t_70)
![](https://img.php1.cn/3cd4a/1eebe/cd5/bff2716168d1ed7b.webp?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMwMDU2MzQx,size_16,color_FFFFFF,t_70)
![](https://img.php1.cn/3cd4a/1eebe/cd5/b428d8f746fb8d47.webp?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMwMDU2MzQx,size_16,color_FFFFFF,t_70)