随着软件产业的发展,越来越多的应用软件在开发过程中使用基于元数据的软件框架。相比于传统的软件框架,基于元数据的软件框架采用配置元数据的方式实现框架与开发人员之间的交互,降低了应用软件和框架之间的耦合性。但由于大部分开发人员将框架提供的功能当做“黑盒”,缺乏对框架内部设计思路和运行原理的深入理解,使其不能很好的理解框架的运行流程和掌握框架的高级特性。本文提出了一种基于元数据软件框架的抽象模型,并以模型作为参考实现了一个支持依赖注入和请求响应控制的元数据框架,帮助开发人员更好的理解元数据框架的设计思路和运行原理。基于上述背景,本文围绕基于元数据的软件框架的研究展开了以下工作:1.结合对已有研究成果和Java平台元数据软件框架的分析,阐述了软件框架使用元数据的原因。以Spring框架作为研究基于元数据软件框架的实际案例,在源代码层面分析了 Spring IoC容器的运行流程和内部设计。2.提出了一个基于元数据的软件框架的抽象模型,模型根据框架执行过程中涉及的功能分为三大模块:元数据处理模块;框架对外服务模块;对象创建模块。根据各模块的特点讨论了模块设计的架构风格与架构模式,阐述了在元数据处理模块应用管道过滤器风格、框架对外服务模块应用分层风格、对象创建模块应用反射模式的优点与缺陷,并针对缺陷提出了改进建议。从软件设计原则和设计模式的角度阐述了模型内部核心组件的设计思路。3.以模型为参考,设计实现了一个基于元数据的软件框架。框架包括元数据资源的识别,元数据阅读,元数据解析等组件,并定义了元数据描述符用来描述类依赖关系和Http请求与Web服务端响应方法的映射。提供了 XML和Java注解两种元数据的定义方式,框架能够通过配置元数据自动完成类依赖关系建立和请求与响应方法之间的映射。4.对框架进行验证,首先单独验证了框架支持的两个功能,然后假想了管理系统中人事管理的需求,设计实现了一个基于Web的应用系统。通过定义XML和Java注解两种元数据,框架自动处理类依赖关系建立和请求响应的控制。同时针对系统中数据浏览和维护界面创建工作量大的问题,引入元数据描述实体表,通过框架创建相关的界面,提高了开发的效率。通过将框架和验证系统的结合,进一步验证了框架的有效性,同时也进一步验证了所提出模型的有效性。
暂无评论