日期:2020.02.19
博客期:156
星期三
嗯,今天看了一下王概凯先生的对于软件架构的一些见解,讲得确实也是不错,地址:https://www.infoq.cn/profile/1279517/publish。呃~我的意思是我看完以后,觉得如果一个人他想要去做一位软件架构师,他肯定是需要理解什么是架构。王先生也有提到,说架构是什么呢?它要做什么就是它的定义!嗯,没毛病~我还是以我的理解来说一下——根据实际的需要构建起整个软件项目开发的流程、框架!
王先生在第一篇目就着重强调了一句话“架构实际上解决的是人的问题”,而我们的架构师就应该常常与项目内的人员沟通,了解他们的技术水平、性格特点、适合去做什么样的工作,有什么爱好、每天的工作状态、团队的搭配是不是适合这个项目。诶!做出来的架构终究是要等着人来把它实践,制作成软件的!所以,我觉得架构师在工作上非常重要的一点就是和成员之间的良好沟通。
王先生提到对于抽象的理解我也就知道了,软件架构师嘛,本来软件这一项事务也不是什么具体的固态物质(虽然哲学上可能不这么认为),对吧?本来就是挺抽象的成品,制作过程更抽象!所以说啊,不是一般人能够当好软件架构师的,软件架构师的抽象能力是每一个相当软件架构师的IT人士都必须具备的,即便成功入职,也要不断努力深化改造!
嗯,但说到底,软件架构师的工作是去帮助其他成员理解整个软件项目的框架,尝试去识别他们的一些自己没有注意到的问题,还要及时地去提醒他们注意到自己的工作问题!但还是刚才说的这都是建立在架构师对他们的详细了解之下的!
王先生说“架构师必须是一个小组的领导者”,我觉得这句话太对了,怎么说都有理!领导者是不是对整个小组成员的性格、技术水平等方面的信息了如指掌?对吧?领导者是不是在小组里面当大哥,就是他说了算,然后架构起整个小组的工作呢?对吧?领导者是统领整个小组的“定海神针”啊!领导者一定是和所有下级都能够有所交谈的,而且每一次都是为了解决小组内部成员的问题!这简直就是对“架构师”的“定义”了呀!
原文中提到了许多我们平常工作中就能够遇到的话“重写代码,推翻原有架构,重新设计等等说法,来说明架构的进化。这实际上就是当初为了完成任务,没有充分思考所带来的后果”。我不知道你们有没有一种强烈的感觉,反正我有,就是这句话简直就是在告诫软件架构师“软件架构师一定要注意——眼光不要仅仅盯在当前的任务看,要放远一点,看到未来的代码的发展和可复用性”。
最终,我们来讨论一下软件架构师对于技术人员和业务人员之间的调和。当然啊,不是让架构师跑到人群中去拿着麦克风喊“不能打架”!要根据实际上项目对技术要求和业务要求的匹配程度和可实现程度来妥善安排。