架构师训练营第一周【学习总结】
在李智慧老师的带领下,经历了一周的学习,首先老师对于面试经验进行了分享,我们可从中学习到一些经验:
自己的技能提升,可以面向简历提升学习,也是一种提升面试中签率的方法。意思是,为了写出公司需要的简历,专门学习相关知识,查漏补缺,以便能应付面试。
在面试中经常会遇到一个开放性面试题“讲述自己经历的最有挑战或最有代表性的项目”,这个题目的考点有:是否了解整个项目架构的目的;是否了解项目中的一些关键问题如何处理;考察面试者表达能力,描述是否有条理性。面试者应当重点根据这些要点回答,避免不相干的话题扣分。
如果自己是面试官,那么当你面试别人时,如果对方回答上了你的所有问题,那说明对方水平不错,但你需要尽量问到对方的技术边界,这样也有利于新员工入职后能有个好的相处模式。
之后第二节课,开始了架构师的技术栈,首先对架构师有了一个初步的认识。
架构师的开始,首先需要对整体项目做较为完整的规划和管控,才能使得项目进行顺利,后期维护顺利。那么就需要准备清晰的架构文档。文档中需要通过模型图来形象的描述软件系统架构。
软件模型,是一个软件系统的完整的抽象。uml 就是统一建模语言,可以用 uml 来描述软件系统的抽象概念。老师讲了几种 uml 工具来构建软件架构模型,例如 uml 静态图:用例图、类图、组件图、部署图。uml 动态图:序列图(时序图)、活动图、状态图。如图:
用例图:
组件图:
时序图:
这些不同的模型图,可以从不同的角度描述软件架构,使其设计意图更为准确。最后,在软件设计的 3 个阶段,需要使用的 uml 图:
需求分析:用例图描述功能场景、活动图描述关键的业务流程、状态图描述关键业务对象的状态变化、时序图描述当前系统与外部系统的依赖关系与调用关系。
概要设计:部署图、时序图描述服务器或子系统级别的调用关系、活动图描述子系统级别、组件图和组件级别的时序图、
详细设计:类图与类的时序图、状态图描述枚举值、类方法级别的活动图
评论