Week1 学习总结

发布于: 9 小时前
Week1 学习总结

架构方法:架构师如何做架构?

  • 从场景出发,紧贴业务,结合实际条件,设计出合理的适合的架构。

  • 忌讳不考虑场景和实际条件生搬硬套比较知名的大公司的系统架构。

如何成为架构师?

  • 精通技术,再扩展知识面,逐步成为技术负责人,提高沟通能力与领导能力;

  • 若在一个小公司,没有架构可言,就有意地去承担架构师这一角色,做好架构设计文档,提供给大家进行讨论;

  • 若在一个大公司,很难分到架构师这一角色,可以考虑跳槽;

大厂offer该如何获取?

  • 根据大厂招聘职责与要求,学习相关技术与经验;

  • 面向要招聘的岗位对自己的简历进行针对性地修改包装;

什么是架构师?

架构师是做架构设计、对系统架构负责的那个人。

架构师是一定帽子,而不是一把椅子;架构师是一个角色而不是一个职位。

架构师的主要职责
  • 编写架构设计文档

  • 开发编程框架

  • 重构软件代码

  • 设计系统架构

  • 进行技术选型,解决技术应用中的问题

  • 优化系统性能

  • 模块分解与微服务架构重构

  • 保障系统安全与高可用

  • 大数据应用

  • 技术创新

  • 沟通管理

架构师的主要能力
  • 编程能力

  • 基础技术掌握能力

  • 常用技术产品的理解与应用能力

  • 性能优化与分析故障的能力

  • 常用架构模式和框架的理解与应用能力

  • 建模以及设计文档的方法和能力

  • 业务理解与功能模块及非功能模块拆解能力

  • 快速学习能力

  • 沟通与领导能力

什么是软件架构?

是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。

元素间关系包括静态和动态关系。

软件架构={元素,形式,关系/约束}

4+1视图模型

单一的视图无法完整的表达架构,因此需要具备完整的视图集。

逻辑视图(Logical View)

设计的对象模型。

过程视图(Process View)

捕捉设计的并发和同步特征。

物理视图(Physical View)

描述了软件到硬件的映射,反映了部署特性。

开发视图(Development View)

描述了在开发环境中软件的静态组织结构。

场景视图(scenarios)

描述用例场景。

软件建模语言UML

什么是软件模型?

模型是一个系统的完整抽象。通常,开发一个计算机系统是为了解决某个领域特定问题,问题的求解过程,就是从领域问题到计算机系统的映射。

为什么要建造模型?
  • 建造传统模型的目的

  • 为了证明某件事物能否工作

  • 前提:建造模型的成本远远低于建造实物的成本

  • 造飞机

  • 建高楼

  • 建造软件模型的目的

  • 为了与他人沟通

  • 为了保存软件设计的最终成果

  • 前提:除非模型比代码更说明问题

UML图的分类
  • 静态图

  • 用例图

  • 对象图

  • 类图

  • 组件图

  • 包图

  • 部署图

  • 动态图

  • 协作图

  • 序列图

  • 活动图

  • 状态图

发布于: 9 小时前 阅读数: 6
用户头像

星河寒水

关注

还未添加个人签名 2018.09.17 加入

还未添加个人简介

评论

发布
暂无评论
Week1 学习总结