动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 软件工程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ 软件工程 ]的信息



本月文章推荐
.让ESB与SOA同步.
.历史十大黑客事件:不堪一击的系.
.数据库设计三大范式应用实例剖析.
.软件的架构与设计模式之什么是架.
.基于小波多尺度和熵在图像字符特.
.回顾2005 开源软件进入SOA.
.探讨软件工程概念模型.
.一场与社会工程学骗子的斗争.
.用Avalon建立未来的Windows用户界.
.解决弹出窗口及AdWare.HBang(第.
.BEA和Siebel共推SOA.
.单例模式Singleton的实现.
.SOA治理的实践.
.软件需求的关键:分解用例场景.
.基于.NET的多用户客户端设计.
.软件项目需求分析的文档内容概述.
.gsoap中文文档(8.1.1).
.JavaCard开发教程之生存周期.
.开发技巧:JAVA编程中字符串分割.
.用Winsock实现点对点通信.

软件的架构与设计模式之层次原则

发表日期:2008-3-23 |


计算机软件工业是一个年轻的工业,它诞生于1950年,至今不过五十几年的历史。相比之下,建筑设计则可以追溯到几千年前埃及金字塔时代,甚至更早。因此,计算机软件设计师可以从建筑设计师那里学习到非常之多的经验和教训。
计算机软件系统的设计和建筑设计有很明显的相似之处。 假如读者到过纽约华尔街四周的话,会发现那里大量的古老宏伟的地标性建筑群中散布着一些超豪华住宅建筑,十分不和谐。其实这些建筑本是昂贵的办公大楼,建筑结构极为牢固,只是因为大楼的设计老旧,无法适应架设计算机通讯设备、以及电梯改造等等需求,而不得不改造为住宅。这一波发生在八十年代的IT设备革新的浪潮导致了大量的建筑物被拆毁重建,这些被改造为住宅的仅仅是其中少数幸存下来的。 闻名的建筑设计学家Steward Brand考察了上千所古今建筑物,非凡是它们在落成和投入使用之后所发生的事情。他发现在建筑物的设计中,层次的概念是基本的原则。 Steward Brand说,好的建筑都是为变化而设计的(Built for Change),从古至今,人类所建造的千千万万的建筑物,其成功与失败全在于是否能够适应需求的变化。但是怎么做到这一点呢?Steward Brand说:"一个好的架构应当将变化的与不变的层次分开" ,也就是按照可变性的不同,将建筑物划分成为不同的变化层。
软件的架构与设计模式之层次原则(图一)
图10、Steward Brand所提出的六个S原则,描述建筑物的设计。
六个S 英国建筑学院院长Frank Duffy说,"我们的基本观点是根本就不存在’一栋建筑’这样的概念。"为什么这样说呢?"一栋建筑"是一个固体的概念;而作为一个固体的建筑物并不存在,真正存在的是一个流体,它处在不断的流动和变化之中,本身可以按照流速划分成几个不同的层次。 在文献[BRAND94]中,Steward Brand进一步发展了这个概念。他指出,建筑物可以划分成为六个层次: ·Site(地点)、建筑物所在的地理位置,建筑用地的外形如何等。建筑用地上面的建筑每过几十年的时间就会被推倒重来,但是建筑用地会长久存在。 ·StrUCture(结构)、建筑的基础结构部分非常难以改变,改变起来也非常昂贵。一般而言,基础结构的生命就是建筑物本身的生命。基础结构的生命通常可以长达三十年到三百年,当然由于其他的原因,很少有建筑物寿命超过六十年的。 显然,建筑物的主体结构的稳固性仅次于地点的稳固性。无论是钢结构的还是混凝土结构建筑,其主体结构都是非常难以改变的,即便较小的改变所需代价都大得难以承受。 Windows操作系统从9x版本不断升级到XP版本,其内部的变化就如同建筑物的主体结构变化一样,是非常昂贵的变化。 ·SKIN(外表)、这就是建筑物的外表。因为时尚、信仰、技术革命、大规模整修等原因,一般建筑物的外表每过二十年左右就会发生一次变化。比如最近对节省能源的关注导致建筑物外表更加密闭和绝缘。 显然,建筑物外表的稳固刑部能够与建筑物的主体结构相比。在建筑物的主体结构不变的情况下,外表可以发生适当的变化。熟悉Windows操作系统的读者都目睹了从Windows 3.x到Windows 9x以及windows 2000的图形用户界面所发生的变化,一个早期开发的应用程序,在不需要修改的情况下,就可以"变脸"。
·Service(服务)、这是建筑物的五脏六腑:通讯电缆、电源线、排水、供暖、通气和空调等,以及建筑物内部的可动部分,比如电梯、自动楼梯等。每过7到15年这些部分就磨损了。很多情况下,这些轻易磨损的部分非常紧密地嵌入到建筑物的结构中,以至于无法简单地更换它们,就只好将建筑物推倒重来。 因此,建筑物的设计必须答应服务部分进行不断的更新,以便为建筑物的住户或者商家提供与时具进的服务。 ·Space Plan(空间规划)、建筑物内部的墙、天花板、地板、门等如何分布。商业空间的规划经常会因为部门重组而发生变化,一般每三年就改变一次;而住宅空间有时每三十年才发生变化。 显然,空间的规划受制于建筑物的基本结构和服务。 ·Stuff(摆设)、这是一些大家都非常熟悉的物品,比如办公室里面的文件、电话、盆景、废纸篓,家庭的床、洗漱间、照片、厨房设施、灯、发梳等,这些东西每月、每周、每日、每时都会变化。 这些装饰物的使用取决于建筑物的内部空间规划,而不是相反。
软件的架构与设计模式之层次原则(图二)
图11、Steward Brand所提出的六个S原则,描述建筑物的设计。
这就是建筑学的层次设计原则,其要害就是按照结构的稳固度对建筑物的结构进行划分。稳固度的反面就是变化的可能性;这一设计原则按照变化的难易程度将结构分割成不同层次,位于最底部的是最稳固、最难以改变的结构,越往上就是稳固性越低、变化越轻易的结构。 因此Frank Duffy说,作为一个设计师,你应当避免为一个五分钟的问题提供一个五十年的解决方案,也不要为一个五十年的问题提供一个五分钟的解决方案。建筑设计师、服务工程师、空间计划师、室内装修师应当解决不同时间尺度上的问题。
上一篇:需求分析的20条法则 人气:210
下一篇:软件开发中项目需求管理简述 人气:201
浏览全部软件工程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-25 WikyBlog v1.7.0.1 多国语言版
2008-7-25 乐彼网上开店系统(56770 Eshop)
2008-7-25 赛特网站管理系统sitecms v3.6.0
2008-7-25 Modoer多功能点评系统 v1.0.1 Bu
2008-7-25 Shangducms Teamsuit! v1.1.0 开
2008-7-25 幻影动漫网视频系统(Ppdong) v1.
2008-7-25 acteecompany企业网站建设系统 v
2008-7-25 恒浪整合管理系统 ims v4.1 ACCE
2008-7-25 艺术图库系统 v1.0 beta
2008-7-19 UltraEdit 简体中文增强版 14.10
2008-7-19 CentOS 5.2 i386 LiveCD
2008-7-19 Snapture多功能相机 v1.4
2008-7-19 iAcces中文输入法 v1.0Build016
2008-7-19 Cookbook烹饪秘籍 v2.5
2008-7-19 苹果专用DVD转换工具 v1.1.59汉化
2008-7-19 Modem修复软件ZiPhone修改版04.0
2008-7-19 AgileMessenger即时通讯工具美化
2008-7-19 Sketches画图软件 v0.7b6破解版


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号