时刻架构
许多程序员的梦想是成为一名架构师,从我刚入行时,导师就给了我这个方向,但我一开始就在大厂做一些微不足道的工作,看着我的工作内容只是架构图中手指尖那么大的一点中还要分出来的一丢丢,看起来架构师高不可攀,正如老师所讲,在大厂成熟的产品或成熟的模块中你是没资格做架构的。
工作两年跳出来自己创业后才发觉自己各方面不足,这个时候为了产品被迫成为了一个所谓的全栈工程师,当时创业圈的同行对我说一个真正的CTO不是要技术多牛,而是需要各方面都懂一点,然后带领团队,但当时还没领悟到这点,创业肯定是不太成功的,但也算是往架构师方向走出了一步。架构师不是全栈工程师,一个人做全部的工作更多的是卖命而已,很累但收获不大,正如老师所说,技术发挥首先要有深度,然后才是广度,在全部的领域做低层次的工作对人的提升不大,我们要提升的是思维,而不是技术。
架构思想是一个人思维的体现,是否真要成为一个架构师其实并不是一个必然的选择,但是架构师的思维,工作模式是必须学习的。
软件架构
这个图非常的清晰地表达了做软件架构的工作,架构是元素之间动态与静态的关系,首先你要熟悉技术和业务,了解怎么去分解元素,怎样更好地表达元素之间关系,又怎么把他们联系起来。这部分内容相当重要,将在以后的学习工作中进一步细化总结
从图中看出,架构师的最终产出是架构文档,这个文档是给相关方看的,所以我们要充分了解我们的对象,度量出最适合的表达方式。
架构文档中,UML是一套很成熟的表达语言,当年刚学软件的时候就感觉,只要按UML做得好做得细致,一切都尽在掌握中,这么些年下来感觉还是没错。
UML包括很多种图,用不同的角度和维度,静态和动态地表现了你达成目标的方式,所以学好UML图是学习成为架构师的过程中的一条线,从一开始就学画图对整个架构师的学习是很合理的,其实画图本身不难,这只是表达你思想的途径,关键还是思想本身。
评论