2005年6月20日

摘要: 计算机软件工业是一个年轻的工业,它诞生于1950年,至今不过五十几年的历史。相比之下,建筑设计则可以追溯到几千年前埃及金字塔时代,甚至更早。因此,计算机软件设计师可以从建筑设计师那里学习到非常之多的经验和教训。计算机软件系统的设计和建筑设计有很明显的相似之处。 如果读者到过纽约华尔街附近的话,会发现那里大量的古老雄伟的地标性建筑群中散布着一些超豪华住宅建筑,十分不和谐。其实这些建筑本是昂贵的办公... 阅读全文
posted @ 2005-06-20 18:58 safeking 阅读(374) 评论(0) 推荐(0) 编辑
 
摘要: 根据Linda Rising的《Pattern Almanac》一书,已知的架构模式有七十多种。这是一个只多不少的统计,其中包括了很多通常认为是设计模式的模式,比如Bridge,Facade,Interpreter,Mediator等模式通常认为是设计模式,但是在许多情况下,也可以作为架构模式出现,因此也常常被当作架构模式。 Layers架构模式 在收集到用户对软件的要求之后,架构设计就开始了... 阅读全文
posted @ 2005-06-20 18:24 safeking 阅读(417) 评论(0) 推荐(0) 编辑
 
摘要: 建筑学的设计原则也应当成为软件系统设计的指导原则。 第一种情况 这也就是最为熟知的情况。客户端向第N层发出请求,而第N层不能独立完成请求,需要调用第N-1层所提供的服务,第N-1层同样需要他的下级,也就是N-2层所提供的服务。如此往复,直到第2层和第1层。 第1层可以独立完成自己的任务,它将执行的结果返还给第2层。第2层得到第1层的结果之后,便能够继续完成自己的任务了,它会把执行的结果继续向... 阅读全文
posted @ 2005-06-20 16:53 safeking 阅读(588) 评论(0) 推荐(0) 编辑
 
摘要: 由于[GOF95]是论述软件模式的著作的第一本,也是OO设计理论著作中最流行的一本,因此有些人常常使用设计模式(Design Pattern)一词来指所有直接处理软件的架构、设计、程序实现的任何种类的模式。另外一些人则强调要划分三种不同层次的模式:架构模式(Architectural Pattern)、设计模式(Design Pattern)、成例(Idiom)。成例有时称为代码模式(Coding... 阅读全文
posted @ 2005-06-20 16:47 safeking 阅读(479) 评论(0) 推荐(0) 编辑
 
摘要: 什么是软件系统的架构(Architecture)?一般而言,架构有两个要素: ·它是一个软件系统从整体到部分的最高层次的划分。 一个系统通常是由元件组成的,而这些元件如何形成、相互之间如何发生作用,则是关于这个系统本身结构的重要信息。 详细地说,就是要包括架构元件(Architecture Component)、联结器(Connector)、任务流(Task-flow)。所谓架构元素,也就是... 阅读全文
posted @ 2005-06-20 16:38 safeking 阅读(507) 评论(0) 推荐(0) 编辑