高级软件工程-软件构造.doc
上传人:sy****28 上传时间:2024-09-10 格式:DOC 页数:9 大小:185KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

高级软件工程-软件构造.doc

高级软件工程-软件构造.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

高级软件工程论文学号:学生所在学院:软件学院学生姓名:任课教师:教师所在学院:2012年6月11级研框架软件构造Mi软件学院Abstract:Withthedevelopmentofcomputertechnologyandsoftware,softwareindustryisfacingwiththechangingenvironmentandrequirements,thesoftwarealsoneedsaflexiblesoftwareconstruction.Thisapproachnotonlyhasagooduniversal,butalsohasagreatscalability.Accordingtothelayeredidea,itcancreateageneralsoftwareframeworkanduseanexternalconfigurationfileinordertodescribethelogicalrelationshipofsoftwareconstruction.Itrealizestheseparationofbusinesslogicandprogramframework.Softwareconstructionframwworkcancreatobjectbyreadingconfigurationfileandachievedynamicconstructionofsoftwaresystem.Itavoidsthelogicofsoftwareconstructiontobefixedinimplementatione.Insoftwareproductlinedevelopmentcanexperiencethispatternofdominant[1].Keywords:softwareconstruction;reflection;farmework;dynamic摘要:随着计算机技术和软件的发展,软件行业面对不断变化的环境和要求,软件也同样需要一种灵活的软件构造方式。这种方式不仅有良好的通用性,也具有灵活的可扩展性。根据这种分层的想法,创建一个通用的软件构造框架并使用外部配置文件描述软件结构的逻辑关系。它实现了程序框架与业务逻辑的分离。软件构造框架可以通过读取配置文件创建对象,实现动态构建软件系统。它避免了该软件的逻辑结构固定在装置中[1]。关键字:软件构造;反射;框架;动态1.前言现在越来越多的软件已经被广泛的适用,应用环境也变得越来越不同,这就需要软件结构具有良好的灵活性。同时,用户需求的不断变化,软件功能也需要不断加强,对于软件的可扩展性也变得越来越重要[2]。软件的灵活性和可扩展性是软件动态性的本质。那么我们如何反映软件的动态性本质呢?方法主要分为两点,一种是软件建设;另一种是软件的演化。为了能够动态地构造软件,这就要求软件架构具有灵活的配置和易重建性。由于软件演化的动态性,它要求软件演化是在运行时,并保持演化的一致性。对于面向对象的语言,反射(reflection)是一种与设计模式同等重要的技术手段,都是为了实现软件构造的动态本质和演化。本文探讨的是软件构造的动态模型。该模型是一个程序设计的框架,它包括反射和各种设计模式。它可以通过灵活的配置和动态对象的创建机制减少软件构造的耦合结构,实现了软件系统的构造,并提高软件构造的动态性质。2.程序动态的构造分析2.1程序的反射反射是用一种自述文件的方式,声明系统的状态和行为。作为一项规则反射系统包括两个逻辑空间组件:基空间(BaseSpace,BS)和元空间(MetaSpace,MS)。基空间是对系统操作的反映,而元空间是对自身空间的反映。对于其特性,系统从基空间映射到元空间,通过反射,系统可以从元空间映射回基空间。因此,软件系统的活动,可以在运行时通过反射被重新配置,这样系统正在运行和要求变更时,可以实现环境的自适应。面向对象语言中,将类空间看成基空间,对象空间是元空间。在类空间中,类之间的关系定义了程序的构成和结构,该程序结构是根据对象空间中类的定义来构造。程序在类的空间被描述,并在对象空间运行。对于传统的程序模式,程序只能存在于一个空间的某个点上。这是瀑布模型的思想,它只有从基空间到元空间的特定功能。实际上,一个程序可以存在两个空间,该程序可以通过反射从元空间返回基空间。2.2.在运行时使用反射构造程序传统的程序设计构造模型使用捆绑(具有约束力)的模式,其组成要素和关系在状态描述中定义。实例化中,从描述状态转化为运行状态,是一个固定装配过程。一旦装配,程序结构就不能改变。然而,运行状态的程序所面临动态的环境,如果环境变化