架构师不是程序员

来源:互联网 发布:编程语言怎么学 编辑:程序博客网 时间:2024/04/30 17:26


其实软件架构(或者扩展到系统架构)是软件工程领域(有一定的理论基础,但是强调工程实践)很重要的一个方向,因为架构定义了要解决问题的合理的解决方案(没有最好的架构,架构很多时候都在权衡,折衷),按照分层的方式来看待,定义了多方面的,比如应用层面(应用架构),产品层面(软件,硬件,...,组件),通讯方面(进程,线程,组件层面)和部署层面,以及质量属性之间的权衡;Divide and Conque(分而治之),....,从而降低问题的复杂度和增强可预见性。当然,对于一个反向的项目,架构设计(Reverse Engineering)也是很重要的一个环节,通俗的讲就是山寨,这也没有什么奇怪的,也不是什么低俗不好的,得出要克隆或者扩展的产品原有的架构和设计模式,技术等等,说山寨不是什么不好的事情您也别笑,IBM-Compatible PC,AMD CPU(INTEL), 富士通小型机(SUN SPARK),都是逆向工程的产物。架构师的职责是什么,也许您大概也了解到了职责所在了,对于各种框架(组件)技术只是其中的一个环节而已(APACHE-FAMILY,Microsoft .NET, MVC Framework,1,2,3,4, .....),其实是一个综合性(工程)的高级职位,微软的第一停车位真的不是CEO的(第三)而是微软的架构师的。



架构师不是程序员,而为什么却变成了程序员呢,我想大概有一下几个原因:


1. 架构师往往是技术人员出身往往是工作很多年的程序员(不是猿),还是不错的程序员,因此被当做技术公关,啃骨头


2. 很多管理还是侧重于行政管理,工程化程度不高,或者刚起步,软件还是写代码的思想还占主流思想,方式方法不配套;工作指导着眼于高大上,其实跟具体的工作指导联系不大。


3. 架构师在企业中往往薪水可能比其他工作人员高一些,不干点具体编码工作,好像体现不出那个薪水的价值,如果比管理人员高一些,估计是要死人了。:)


4. 斗,这个就不说了,:),这一张嘴,对方就明白自己是圈外人了。都知道,但是技术类的人员对这个都不在行,这那得,不行,迅速撤离。



其实好处很简单,如果把一个东西的架构搞清楚,定义好,并快速在组织内部署,比每个程序员都在独立探索,那个更有杀伤力,风险更小?其实很容易判断,如果一个机构对新员工没有一个指导的话(再重新探索来一遍)...,不用看了CMMI 0级企业。 :),最起码,人家不是程序员,赚点钱不能要命吧,开个玩笑,一般人是累不死的 :)。


0 0
原创粉丝点击