架构师训练营 - 第 1 课总结 -202006- 架构设计
1.架构简介
一切皆可架构.
领悟问题的真谛并决定用什么的方式面对问题.
构建一张动态网,问题作为输入,解决方案作为输出.
悟性很重要
2.软件架构简介
深度解读以下图,并烙在脑海里.
每个系统都有一个架构.
架构由许多架构元素组成,并由元素之间的静态动态关系形成.
所有这些设计都会在架构文档里阐明.
架构文档将会包含不同层级和方向的架构视图及文字说明.
这些架构文档,都将以系统/项目的相关方及关注点为导向.
否则将只会是一堆没有价值的信息.
架构设计不在于使用厉害的技术,而在于是否适用特定的场景需求(业务,现在资源)
3.成为架构师
那个做架构事情的人就是架构师
已有的成熟系统不需要新的架构师
然而在工作中可以抓住一切机会主动做架构的事情
以 PPT 为学习框架
在课程中互动思考
面向简历学习
面向面试学习
但学习不会获得经验
重新思考以往项目经验
最终使得知识立体化
知识先有精度才能有广度,否则瓶颈很快到来.毕竟所有系统,追根到底都相似,一通百通.
4.架构师职责
然而现实生活中,大规模的系统架构设计的工作机会几乎没有.更多的是系统维护,业务架构变更升级以及中小系统的架构设计.
5.如何画架构图
4+1 视图模型 : 逻辑+开发+流程+物理视图围绕着场景视图来设计.
架构是立体的,所有一个系统应该有不同维度层面关注点的架构视图.
为工作而工作,事情做的是对的按规则行事,但永远不尽人如意.因为本质上工作是为人而做.
所以图画成怎样,取决于具体使用的人.
模型就是一个系统的完整抽象.
主流建模工具- UML.
6. UML 建模
关键: 使用哪种图在什么场合下能达到设计意图的展示.
为什么是统一建模语言?不只是一个画图工具.而是可以用来沟通交流思考
7 种主要 UML 建模图形.
图里的每条线,每个点,每个符号,都不应是多余的.
图里的元素数量应该适量.(推荐<=20 个).
依赖是更强的关联.
聚合元素可以不在同一生命周期,组合是一种强的聚合,必须在同一生命周期(汽车与配件,人与手).
需求设计阶段/文档: 核心用例图,活动图,状态图,时序图
概要设计阶段/文档: 部署图,系统时序图,系统活动图,组件图,组件时序图
详细设计阶段/文档: 核心类图,类时序图,状态图,方法活动图
(1 个组件可以由一个开发人员负责)
7.画图工具
Astah
Star UML
Plantuml
Draw.io
ProcessOn
8.练习
版权声明: 本文为 InfoQ 作者【👑👑merlan】的原创文章。
原文链接:【http://xie.infoq.cn/article/d64ef7abfaebe696b62aa07ac】。文章转载请联系作者。
评论