关于软件架构、设计模式和应用框架的一点看法
2007-07-16 11:45
876 查看
最近在http://bbs.csai.cn/bbs/view.asp?Id={7106D3F2-4091-44E1-9CA4-D873DFFA06B1} 上看到有朋友提对对上面三者关系提出疑问,文http://mantx.csai.cn/user1/265/archives/2006/6359.html 对上面的问题给出了很好和生动的回答,但本人觉得上面的回答不够充分,所以本人斗胆多说两句,请匆见怪。
软件架构重点关注的是软件的整体,如何用一种适合系统功能需求以及非功能需求的结构方式去构建系统中的各个组件以及它们的交互过程。从一开始,软件架构从一开始就关注了整个系统的功能需求和非功能需求,在全局层面上对系统软件进行规划。一个很明显例子,如建造一个新的城市,要考虑城市建造的要求,同时还要考虑到城市与周边和地形的关系,从而决定采用什么样的架构,决定建造一个什么样的城市,如园林式还是其它式的。
值得一提的是:一个具体的系统,由于系统很大,还可以划分成很多个小的子系统,那么子系统同样也需要规划的,也即同样要进行架构设计。如上述例子中具体的一个房子,要看它的功能需求是什么,如果一个办公大楼,它的局部设计架构与一个私人住宅肯定是不同的。
应用框架,从软件角度来看,它是一个半成品,但不是一个软件,更与架构不同。架构是设计思想和方案的表现,而用应框架一个可运行的代码,但还不是软件,只是一个半成品。应用框架看起来似乎是一个软件的骨架,它分离了软件的固定部分和可变部分,让具体应用对它进行扩展,以适应变化的需求。事实上,的确可以说应用框架是软件的骨架,但是有一个前提就是,应用框架是在软件架构的指导下而产生的应用框架,是它所适合的应用软件的一个全局或局部的骨架。
因此,架构是一种设计与思想,它可以由应用架构来表现出来,当然也并非一定要。但是应用框架肯定是由架构的指导而产生出来,它不能脱离架构而独立生存。与其说应用框架是软件的骨架,倒不如架构才是软件真正的骨架,框架只不过是架构的表现方式罢了。
最后设计模式都是大家熟耳能闻的,我个人认为架构是骨,而设计模式是肉,这样它们俩结合起来才产生出来有血有肉的软件或者应用框架。
软件架构重点关注的是软件的整体,如何用一种适合系统功能需求以及非功能需求的结构方式去构建系统中的各个组件以及它们的交互过程。从一开始,软件架构从一开始就关注了整个系统的功能需求和非功能需求,在全局层面上对系统软件进行规划。一个很明显例子,如建造一个新的城市,要考虑城市建造的要求,同时还要考虑到城市与周边和地形的关系,从而决定采用什么样的架构,决定建造一个什么样的城市,如园林式还是其它式的。
值得一提的是:一个具体的系统,由于系统很大,还可以划分成很多个小的子系统,那么子系统同样也需要规划的,也即同样要进行架构设计。如上述例子中具体的一个房子,要看它的功能需求是什么,如果一个办公大楼,它的局部设计架构与一个私人住宅肯定是不同的。
应用框架,从软件角度来看,它是一个半成品,但不是一个软件,更与架构不同。架构是设计思想和方案的表现,而用应框架一个可运行的代码,但还不是软件,只是一个半成品。应用框架看起来似乎是一个软件的骨架,它分离了软件的固定部分和可变部分,让具体应用对它进行扩展,以适应变化的需求。事实上,的确可以说应用框架是软件的骨架,但是有一个前提就是,应用框架是在软件架构的指导下而产生的应用框架,是它所适合的应用软件的一个全局或局部的骨架。
因此,架构是一种设计与思想,它可以由应用架构来表现出来,当然也并非一定要。但是应用框架肯定是由架构的指导而产生出来,它不能脱离架构而独立生存。与其说应用框架是软件的骨架,倒不如架构才是软件真正的骨架,框架只不过是架构的表现方式罢了。
最后设计模式都是大家熟耳能闻的,我个人认为架构是骨,而设计模式是肉,这样它们俩结合起来才产生出来有血有肉的软件或者应用框架。
相关文章推荐
- 关于MVC到底是设计模式还是框架又或者是架构模式的新看法
- 关于软件架构设计的一些思考--通用架构设计模式
- 软件架构和软件框架-用例模型设计应用(1)
- 《软件架构与设计模式》关于 抽象工厂模式 的一个小例子
- 软件架构和软件框架-用例模型设计应用(1)
- 软件架构/ 框架 /设计/模式以及MVC是设计模式还是架构模式
- 关于通用信息管理类应用软件框架的一点想法(导入不成功,只能考一篇一篇的转咯)
- Android 框架搭建 软件架构 设计模式与系统架构
- 软件架构和软件框架-用例模型设计应用(1)
- 『常识』软件体系结构-构架、架构、框架、设计模式 软件体系结构-构架、架构、框架、设计模式
- 消息订阅、派送设计模式在“平台-插件”式软件架构设计中的应用
- 关于软件框架功能升级的一点看法
- 软件的架构与设计模式之模式的种类介绍
- 软件的架构与设计模式之什么是架构
- 【收藏】软件的架构与设计模式之模式的种类
- 重构Minot's应用——ios网络通信中的设计模式与架构设计
- 设计模式、框架、架构、平台的区别
- Barry手记:关于用PB设计应用框架的思想(1)
- 也谈设计模式,架构,框架和类库的区别
- 软件系统开发中的组件框架技术研究、设计和应用