请问体系结构、框架、架构设计有什么区别和联系
在看文档的时候,经常有体系结构、框架设计、架构设计等字眼,请高手解释一下它们之间的联系和区别啊? 问题点数:100、回复次数:17Top
1 楼shshsh_0510(雨下了4年11个月零2天)回复于 2002-09-18 18:16:30 得分 20
体系结构:每种系统都有一定的体系结构,如一个B/s系统有一个web server,上面还有服务端脚本解释程序,客户端有一个browser,这样,你编程时,会清楚自己的系统是如何工作起来的。一般系统复杂、成熟,上升到理论层次。
架构设计:设计就是说不是固定的,而应由你来决定的了。如你的一个输入框的合法性检验是放在客户端还是服务端?
框架设计:?,我理解称得上框架可能会介于两者之间,或者问题没者麽复杂到称得上“体系结构”的程度。
上边的解释,我自己都感到不太满意,全做抛砖引玉吧Top
2 楼zyx_csu(笑呵呵)回复于 2002-09-19 00:22:44 得分 0
查了一些资料,如下:
1.体系结构、框架、设计模式是面向对象中复用粒度不一样的要素。体系结构粒度最大,它可以看成(构件,连接器,约束)的一个集合,目前它研究包括体系结构描述语言等表示方面和体系结构风格等设计方面。框架和设计模式是体系结构的元素,框架主要是针对一个特定应用领域的适合所有应用的设计决策,设计模式是指在一定的环境下可重复的设计方案。框架粒度比设计模式大,一个框架可以使用多个设计模式,反之不然。设计模式与特定的应用领域和语言无关,比框架更抽象。
2.架构设计是rup中的提法。在 Rational Unified Process 中,软件系统的构架(在某一给定点)是指系统重要构件的组织或结构,这些重要构件通过接口与不断减小的构件与接口所组成的构件进行交互。
3.我理解架构设计是体系结构在应用中的一个设计。架构设计是体系结构在实际系统中的一个实例。
请大家对我第3点理解指正。Top
3 楼EricLao(Eric2002)回复于 2002-09-19 08:42:48 得分 20
体系结构更加偏重于系统的物理结构或组成。
框架和架构应该是一回事,不过是frame work翻译的不同而已,目前很流行这么一说,重点在于软件的设计和分析。
其实,这些概念都比较大,对于非系统分析人员不用太在意,倒是几个较小的概念,如:模式,构件,组件等应该多看看。
Top
4 楼AiWangji(爱忘记)回复于 2002-09-19 09:30:25 得分 20
楼上错了。
构架是architecture : 它是对软件系统的系统组织,是对构成系统的
构件的接口,行为模式,协作关系等体系问题的决策总和。它不仅涉及
到结构与行为,而且还涉及到系统的使用,功能,性能,适应性,重
用性,可理解性,经济性和技术约束的权衡和美学考虑。
框架才是framework:它是一种为特定的领域内的应用提供可扩展模板
的构架实例。Top
5 楼AiWangji(爱忘记)回复于 2002-09-19 09:53:40 得分 0
对不起刚才把架构打成构架了。Top
6 楼Shepherd_0(快乐就行)回复于 2002-09-19 10:17:55 得分 0
cool~Top
7 楼zyx_csu(笑呵呵)回复于 2002-09-19 18:33:48 得分 0
谢谢各位的讨论,先加80分。
AiWangji(爱忘记) :
请问架构和体系结构的联系和区别是什么,它们的英语单词都是architecture啊。
EricLao(EricLao) :
请问构件和组件有什么区别啊,它们的英语也都是component啊?Top
8 楼AiWangji(爱忘记)回复于 2002-09-20 07:49:39 得分 0
To zyx_csu(笑呵呵) :
照我的理解架构就是体系结构。Top
9 楼EricLao(Eric2002)回复于 2002-09-20 09:00:38 得分 0
你挺细心的。其实我认为组件和构件也是差不多的,但在不同环境context中会有细微的差别,组件好像偏“软”一些,常说组件技术(如:COM),是一种软件技术,而构件主要在系统分析,或讨论体系结构时说采用某种某种构件,更加偏“硬”一些。
我的理解有限,希望各位指正。Top
10 楼shshsh_0510(雨下了4年11个月零2天)回复于 2002-09-20 09:59:59 得分 20
一个单词从英语翻译为汉语,翻译为两个不同词,有两种情况:
1、同一含义,不同的译法。
2、不同领域不同含义。
就component来说,我认为是第一种Top
11 楼spell(问到底)回复于 2002-09-20 11:07:02 得分 0
\Top
12 楼zyx_csu(笑呵呵)回复于 2002-09-20 11:39:50 得分 0
找到一些资料,基本将构件、框架、设计模式的一些关系阐述清楚了,如下:
1.框架和构件
框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。
可以说,一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。
构件领域框架方法在很大程度上借鉴了硬件技术发展的成就,它是构件技术、软件体系结构研究和应用软件开发三者发展结合的产物。在很多情况下,框架通常以构件库的形式出现,但构件库只是框架的一个重要部分。框架的关键还在于框架内对象间的交互模式和控制流模式。
框架比构件可定制性强。在某种程度上,将构件和框架看成两个不同但彼此协作的技术或许更好。框架为构件提供重用的环境,为构件处理错误、交换数据及激活操作提供了标准的方法。
应用框架的概念也很简单。它并不是包含构件应用程序的小片程序,而是实现了某应用领域通用完备功能(除去特殊应用的部分)的底层服务。使用这种框架的编程人员可以在一个通用功能已经实现的基础上开始具体的系统开发。框架提供了所有应用期望的默认行为的类集合。具体的应用通过重写子类(该子类属于框架的默认行为)或组装对象来支持应用专用的行为。
应用框架强调的是软件的设计重用性和系统的可扩充性,以缩短大型应用软件系统的开发周期,提高开发质量。与传统的基于类库的面向对象重用技术比较,应用框架更注重于面向专业领域的软件重用。应用框架具有领域相关性,构件根据框架进行复合而生成可运行的系统。框架的粒度越大,其中包含的领域知识就更加完整。
2.框架和设计模式
框架、设计模式这两个概念总容易被混淆,其实它们之间还是有区别的。构件通常是代码重用,而设计模式是设计重用,框架则介于两者之间,部分代码重用,部分设计重用,有时分析也可重用。在软件生产中有三种级别的重用:内部重用,即在同一应用中能公共使用的抽象块;代码重用,即将通用模块组合成库或工具集,以便在多个应用和领域都能使用;应用框架的重用,即为专用领域提供通用的或现成的基础结构,以获得最高级别的重用性。
框架与设计模式虽然相似,但却有着根本的不同。设计模式是对在某种环境中反复出现的问题以及解决该问题的方案的描述,它比框架更抽象;框架可以用代码表示,也能直接执行或复用,而对模式而言只有实例才能用代码表示;设计模式是比框架更小的元素,一个框架中往往含有一个或多个设计模式,框架总是针对某一特定应用领域,但同一模式却可适用于各种应用。可以说,框架是软件,而设计模式是软件的知识。
希望大家继续讨论体系结构和架构之间的关系。
Top
13 楼arfayr(阿飞)回复于 2002-09-20 15:47:50 得分 20
体系结构〉框架〉构架
这样理解对么?Top
14 楼zyx_csu(笑呵呵)回复于 2002-09-24 12:20:45 得分 0
这样理解吧:
体系结构>框架>构件
体系结构研究主要是软件的概念模型和逻辑模型,它甚至包括软件的形式化描述,架构是软件的实现模型。
设计模式是适合于各中软件的一种可以复用的设计方案,强调设计复用。Top
15 楼skypurple(天紫)回复于 2002-09-26 15:01:53 得分 0
component翻译为构件和组件,是一个意思,是几个大牛的不同翻译Top
16 楼bbzy(红小兵)回复于 2002-09-27 22:00:19 得分 0
gzTop
17 楼pinely(凡星)回复于 2002-09-28 11:46:44 得分 0
zyx_csu(笑呵呵) 提到的说法的全文如下:
http://www.huihoo.com/patterns/framework/
请大家看看,发表一下看法。Top





