架构培训 -01 学习总结 如何成为架构师
某大牛曾说过:“不想成为架构师的程序员,不是一个好程序员”!相信大部分程序员都有一颗成为架构师的心,当然作为一名好程序员,我也是其中的一员。很多人因为种种原因都未能实现这个梦,但今天因极客开办的这个架构培训班,让我觉得我比一般人更有幸成为一个优秀的架构师。
架构师职责
在学习这个课之前,我对架构师的职责理解就是一句话:找到合适的方法和工具来解决问题。
通过学习李智慧老师的课之后我对结构师的职责有了更深入和细致的认识:
1、编写架构设计文档
2、开发编程框架
3、重构软件代码
4、设计系统架构
5、进行技术选型,解决技术应用中的问题
6、优化系统性能
7、模块分解与微服务架构重构
8、保证系统安全与高可用
9、技术创新
10、沟通管理
架构师基本能力
什么是架构
软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各方面的设计。-维基百科
在整个图中相关方的关注点是我们架构最终要服务的焦点。为了能够跟相关方进行沟通,就需要有针对不同相关方能够理解的不同架构文档,因此架构文档写成什么样是根据相关方来决定的,并不是所有的相关方公用一个架构文档。架构最后交互给相关方的除了架构文档之外,最后是形成一个可用的系统。架构师所设计的架构是由架构元素和元素关系组成。
元素关系分为:静态关系和动态关系。
架构文档
在架构师职责列表中第一条就是编写架构文档,因此掌握怎么编写架构文档是一项基本技能。
架构文档是给相关方提供可沟通的一种媒介,为了能够更清楚的表达架构的内容,通常通过各种视图来表现。4+1架构视图模式是业界常用的表达方式。
逻辑视图:设计对象的模型。
过程视图:捕捉设计的并发和同步视图。
物理视图:描述软件到硬件的映射,反映了部署特性。
开发视图:描述了在开发环境中软件的静态组织结构。
场景视图:描述用例场景。
如何来具体的表达这些视图?可以UML(统一建模语言)的9种模型来表达,9种中我们常用的有7种。
静态图:
用例图
类图
组件图
部署图
动态图:
序列图
活动图
状态图
问题点
这次作业完成的效果不是很好,预留的时间太短。墨菲定律,凡事没有想象的那么简单。以后要提前把作业做了。
评论