写点什么

架构师训练营 - 学习笔记 - 第一周

用户头像
superman
关注
发布于: 2020 年 06 月 10 日

1:什么是软件架构师

架构师是帽子不是椅子---做架构就是架构师。

架构师就是项目或组织中做架构的人,可能没有明确职位或有明确职位

有机会就去做架构---做了就有锻炼了做架构的能力,能力有了机会就来了--就成了架构师了



如何成长为架构师:

如何做个好厨师,要认识足够多的材料,然后有高超的炒菜技能

架构师也是,要认识足够多的技术,架构模式,设计模式,然后提升自己的抽象,设计,编码能力

2:什么是软件架构

目的:解决软件宏观,整体的设计问题,明确做软件的目标,核心流程,结构。为后续的产出软件指导。

内容:给相关方关注内容呈现软件的设计。重点-架构要满足各个相关方的关注点

包括客户,老板,研发 ,测试。

够用就行(满足工作顺利进行),老板支持,客户确认,研发可依据分工,开发。不需要就不给。

产物:架构文档(架构的结果用架构文档呈现)



3:架构文档

3.1 原则

1:牢记架构是做给人看的,涉及人员明白可顺利开展工作。

内容及详细程度都要以人而定,比如合作熟悉经验丰富的 交给的设计就可以只概要说明关键点就行。

如果新人不熟悉就要更详细。

2:不同的架构视图反应相关方点的关注点

3:按开展工作进度逐步设计

自顶向下,做重点

3.2 UML建模

3.2.1 概述

1:建模过程

先有抽象后有建模

脑子有东西才画的出。(其实画也可以启发下,但主要是的想明白,画简单),过程为



2:为什么要多个视图

系统是有多个方面,不同相关方关注的是不同的,不同视图表达的面是不同的,给不同的人看。

即便相同的人,也有需要从多个方面才能把系统表达的立体,明白。

3:同类视图在不同阶段是不同的

不同阶段相同类型的视图关注的粒度是不同的,

比如序列图,在总体设计可能表达的是子系统间的,在组件设计表达的是组件内部的,在详细设计时表达类(对象)间的交互。

因此很多图是在各个阶段都可以用的,比如时序图,状态图

4:UML统一建模语言

元素:各种概念的抽象,比如类,组件,依赖等--词汇

元素的表达:各种图形。--词性(abcdefg)

元素间组合方式:可以理解为语法

视图:一类元素的组织方式。不同类视图由不同元素按规则组合,表达软件的某个方面。--类比一种文章类型(比如法律,说明书,诗歌等等)

uml图:一篇文章。

多个UML图组成的架构:完整的书

5:绘制指导

动态图,静态图结合。4+1视图,一个视图尽量不要太大,可以分层次的用多副视图表示。

6:视图分类

大体可分为静态动态两大类,用静态视图动态视图结合表达效果好。

静态类视图:类图,对象图,包图,部署图,构件图

动态类视图:用例图,活动图,状态图,序列图(时序图),合作图(协作图)

3.2.2 视图绘制

各类视图的内容及绘制要点。后续完善



用户头像

superman

关注

还未添加个人签名 2018.07.20 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营-学习笔记-第一周