(转)软件框架、架构、模式

软件框架:

软件框架就是SoftwareFrameworks,它定义了软件系统在某个平台上为完成某项功能所提供普遍操作、以及这些普遍操作的内在实现过程。换一种说法,软件框架提供了若干操作接口,这些操作接口可以完成特定的功能,这些操作接口的实现对我们来说是不可见的,我们只需要知道如何使用这些接口。我们在使用软件框架的时候,可以选择直接使用接口或者从接口继承,这两种方法都能使我们使用软件框架提供的功能。

软件框架应当是已有的、封装的、完备的、方便使用的。

比如:Microsoft的MFC框架,提供了操纵win32平台的各种类,直接使用或者继承使用,可以通过MFC框架访问win32平台的各项功能。

再比如JSP框架,撰写JSP代码,不需要理会JSP框架与servlet之间的通讯,因为那些是软件框架的工作。

软件架构:

软件架构是SoftwareArchitechture,它是为完成某项任务而设计的,包含了大量可复用的地框架、构件,软件架构的重要工作是合理的选择这些构件和怎样能够让这些构件更好的在一起协同工作,所以需要一致的通讯协议和标准。与软件框架相比,软件架构更深入一些,可以说是在搭建特定的"软件框架",而单纯的软件框架只是使用而已。

例如,要完成企业信息化建设,软件架构需要考虑如何选用合理的业务构建,如何统一各个构建之间的数据通讯,怎样才能更加迅速的适应需求的变化。

设计模式:

设计模式是DesignPattern,它是由GOF提出的关于面向对象设计方面的理论,它是可重用软件的基础。因为它凝结了人们在使用面向对象技术进行软件设计的时候,所积累的宝贵经验,这些经验有助于使设计的软件系统更有利于修改、扩展、乃至重用。

好的构件的实现由一个或者多个设计模式组成,好的软件架构有多个相互作用的、可重用的构件组成,面向某一领域的特定的软件架构又会慢慢演变成软件框架。所以,提高软件开发效率的终极武器是优秀的软件开发框架。但是,市场上已有的软件开发框架,并不能够完全满足我们日常软件开发的需要,因此,通过产品线、构件库等手段逐渐建立公司自己的框架库,这也是我们国内各家软件公司的当务之急。

小弟才疏学浅,信口雌黄,各位切莫见怪。

相关推荐