gd0 2012-07-28
作为技术开发人员以及有将近2年了。因为现在团队里有一个架构师,所以在日常开发中不太涉及到架构方面的思考。但总听到大家在会议上讨论“过度设计”,“冗余设计”。深刻体会到作为一个刚入门的开发人员,想要成为一个架构师还有很多地方需要学习进步。掌握好基本的技术只是第一步。
读书我会首先看目录,《软件架构设计》这本书的结构比较清晰,分3个部分,基础概念篇,实践过程篇,模块划分专题三个部分。清晰的结构有利读者对知识的梳理和归纳,作者更具不同的读者为读者指导阅读路径。让我对本书抱有更大的期待。
文中既有对概念的介绍,也有实际应用时问题探讨。对于技术人员从事软件开发,架构都有明显的教育指导作用。
自以为软件架构,就是如何设计系统,关注各个子系统间的技术,分割,交互。明确用什么技术,实现什么功能。看到书中有那么多对软件架构的概念描述,觉得自己的理解太过肤浅。
我比较认同Booch、Rumbaugh和Jacobson对软件架构的定义:
架构是一系列重要决策的集合,这些决策与以下内容有关:软件的组织,构成系统的结构元素及其接口的选择,这些元素在相互协作中明确表现出的行为,这些结构元素和行为元素进一步组合所构成的更大规模的子系统,以及指导这一组织——包括这些元素及其接口、它们的协作和它们的组合——架构风格。