软件架构与架构师 转
买过房子的人都知道5层以下的楼房一般是砖混结构,而高层和小高层的楼房都是框架结构,楼层越高对结构要求越高。软件也是一样,系统越庞大,生命周期越 长,结构的重要性就越明显。因此,随着人们对软件工程的深刻理解,将架构进行充分的强调是很自然的,正如人们越来越强调系统的需求分析,从而有了领域工程 师和领域专家的概念一样。其实强调软件架构的最主要的目的有3个:
重用:人们希望系统能够重用以前的代码和设计,从而提高开发效率;
扩展:人们希望在系统能够保持结构的稳定的前提下很容易地扩充功能和性能,希望能够“以静制动“;
简洁:常言道,简洁就是美,好的架构一定易于理解,易于学习,易于维护,人们希望能够通过一个简洁的架构来把握系统;
正如我们可以很简单地用砖混结构和框架结构来概括一幢大楼的结构,专家们也定义了一些术语来定义软件的架构风格,如层次结构、B/S结构等。软件架构设 计是软件设计的一部分,是其中的总体设计。软件的架构设计有一定的创造性,但它毕竟是一个工程活动,架构的设计是有章可循的,有一定的规律性的,是可以重 复的,有其稳定的模式。当然,在系统一开始很难可以建立一个完善的稳定的架构。迭代是软件开发过程中必然的一个过程,这是人的思维活动的一个必然阶段。
软件架构师实际上就是软件的总体设计师。首席设计师就是总设计师,打个通俗的比方:*是中国改革开放的总设计师,我们用现在的说法可以讲,*是
中国改革开放的首席架构师。架构师的形成一定是在实践中积累起来的,而并非上了几次培训班,读了几本书就可以成功的,架构师是在工程实践中培养出来的!
【作者:刘伟 http://blog.csdn.net/lovelion】