程序员也要学会做架构
软件工程师是一份充满变化的职业,总是有新的语言可供学习,新的平台可供理解,以及新的业务问题需要解决。
软件从初级开始,成长的方向不止一个。
其中架构师是其中之一。架构师是指定的软件专家,负责对给定产品针对系统设计,基础架构和技术标准(包括语言,工具和平台)做出行政决策。架构师设定愿景并监督系统的构建。由软件工程师进行构建。
成为软件架构师的道路对于每个人而言都是不同的 - 有些人逐渐成长为角色,而另一些人像马拉松运动员一样训练以达到目标。
画技术架构图,是成为架构师的训练之一,这里来厘清架构图的基本知识:
- 架构视图
- 逻辑视图 Logical View
- 过程视图 Process View
- 物理视图 Physical View
- 开发视图 Development View
- 场景视图 Scenarios
4-1 View Model
- 静态建模 - 指对象之间通过属性互相联系,这些联系不随时间而转移
- 用例图 Use Case Diagram
- 类图 Class Diagram
- 对象图 Object Diagram
- 包图 Package Diagram
- 组件图 Component Diagram
- 部署图 Deployment Diagram
- 动态建模 - 描述系统的动态行为和控制结构,动态行为包括系统中对象生成期内可能的状态和时间发生时状态的转移,对象之间动态
合作关系,显示对象之间的交互过程以及交互顺序等等
- 状态图 State Diagram
- 活动图 Activity Diagram
- 时序图 Sequence Diagram
- 合作图 Collaboration Diagram