首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 156 毫秒
1.
面向方面编程分离了核心关注点和横切关注点,提供了模块化横切关注点的机制,很好地解决了面向对象技术处理横切关注点时存在的代码散布和代码纠缠问题.和日记记录、安全验证等业务一样,持久化也被认为是经典的横切关注点业务,适合用AOP来实现.分析了现有的基于AOP的持久化实现,发现大部分实现过于追求AOP要求的obliviousness特性,而在功能或性能上难以满足现实应用的需求.探讨了持久化的特点及持久方面化的机制,提出了一套实用的基于AOP的持久化框架.该框架保持了面向对象持久化技术的功能及性能,同时又具有方面化持久业务所带来的更高的可重用性、可维护性及可移植性.  相似文献   

2.
针对面向对象编程(OOP)中横切关注点与业务逻辑代码纠缠的现象,提出了一种面向方面编程(AOP)的统一建模方法以弥补OOP的不足;该基于UML的方面建模方法从AOP与OOP技术存在的问题出发,通过基于UML的AOP建模方法研究,提高了软件设计的模块化,增强了代码的重用性、维护性;最后,以银行系统ATM中的取款业务的建模为例来描述用UML建模过程,为AOP建模提供了一种新的研究思路。  相似文献   

3.
张京军  韩范玉  李慧 《微计算机信息》2007,23(33):266-267,245
重构是保留软件外部行为的同时重新组织代码的过程和一组技术,由于它在创建敏捷代码方面的实用价值而受到普遍欢迎。但是,目前的重构步骤只是将代码模块化为整洁的OO实现,不能很好得解决横切关注点引发的问题;面向方面编程(AOP)由于封装系统中的横切关注点的强大能力而日益受到关注,它使用了一种成为方面的新模块化单元。本文将AOP引入到重构中,协同地组合这两种技术来重构横切元素,研究面向方面重构的基本原理、所涉及的步骤以及一些常用技术。  相似文献   

4.
葛君伟  何勇 《计算机应用研究》2008,25(10):3012-3014
面向方面编程 ( AOP)把横切关注点从系统中分离 ,解决了面向对象编程 ( OOP)中代码纠缠、散射的问题。但在面向方面建模中 ,横切方面没有得到很好的支持。首先 ,在统一建模语言 ( UML)元模型的基础上利用类图建立了整体框架模型 ,设计了核心类、方面、横切元素及其之间的关系 ;其次 ,利用 UML扩展机制为切点、通知、方面等主要元素建立了新的模型 ,设计了它们与方面之间新的关联关系并为其定义了语义。通过 UML扩展,使得 UML能够直接表达面向方面概念 ,支持面向方面建模设计 ,实现了面向方面模型  相似文献   

5.
面向对象的编程OOP(Object Oriented Programming)能够有效地解决面向过程语言的缺陷,现有的软件项目大都采用面向对象的编程范型。但是OOP不能解决由于横切属性带来的代码混乱和代码分散等诸多问题,导致系统的可读性和复用性差,因此引入了面向方面的编程AOP(Aspect—Oriented Programming)思想。该编程思想可使开发者有效地将业务关注点与横切关注点分离,解决OOP的难题。介绍了AOP技术中较成熟的语言——AspectJ及其相关概念,通过一个信息管理系统,展示AOP技术在处理横切关注点时发挥的优势。  相似文献   

6.
葛君伟  何勇 《计算机应用研究》2008,25(10):3012-3014
面向方面编程(AOP)把横切关注点从系统中分离,解决了面向对象编程(OOP)中代码纠缠、散射的问题。但在面向方面建模中,横切方面没有得到很好的支持。首先,在统一建模语言(UML)元模型的基础上利用类图建立了整体框架模型,设计了核心类、方面、横切元素及其之间的关系;其次,利用UML扩展机制为切点、通知、方面等主要元素建立了新的模型,设计了它们与方面之间新的关联关系并为其定义了语义。通过UML扩展,使得UML能够直接表达面向方面概念,支持面向方面建模设计,实现了面向方面模型的可视化和可辨别性;整体框架模型使得面向方面整体结构清晰,各个核心元素之间关系明确,为面向方面建模提供了一个整体设计平台,提高了面向方面软件设计的模块化,增强了代码的重用性和系统的可维护性。  相似文献   

7.
在传统的OOP编程中,由于需求空间是N维而实现空间是一维的,导致了软件开发中横切关注点的代码纠缠问题,严重影响了软件的质量.作为OOP的补充,AOP很好地解决了横切关注点带来的问题,提供了核心关注点和横切关注点互相分离的解决方案.本文从具体工程中开发线程监控这一需求所暴露的问题出发,提出了为什么需要AOP编程;然后着重讨论如何通过AOP技术解决这一问题,提出并实现了基于AOP技术的通用线程监控平台.该平台可以在不手工改变系统源代码的情况下通过工具植入系统内部,实现对运行线程信息的监视、对指定线程运行速度的变换和对整个系统运行行为的控制.  相似文献   

8.
利用面向方面的编程思想,在实时系统设计的需求分析阶段分离系统的功能性核心关注点和非功能性横切关注点,并着重对系统的非功能性等横切性关注点进行分析.通过扩展UML对实时系统时间切面建模,讨论了时间方面织入过程,利用AspectJ对建模的结果进行简单的编码实现.通过实际ATM自动提款机的实际例子说明如何在实时系统开发中运用这些技术进行系统建模和实现,充分显示了这些技术对实时系统进行分析建模的优越性.  相似文献   

9.
面向方面软件开发研究   总被引:4,自引:0,他引:4  
系统的某些关注点横切整个系统,无法很好地封装在单个模块里,造成代码混乱和弥散,用面向方面编程AOP可以解决这些问题。首先介绍了现代软件开发方法及其产生的问题;其次,阐述了AOP的基本概念,并结合AspectC++演示了如何进行面向方面的编程;再次,描述了如何对UML扩展以支持对方面建模;然后介绍了面向方面软件开发在实时系统中的应用;最后给出了结论和未来的主要工作。  相似文献   

10.
面向方面编程(Aspect-Oriented Programming,AOP)是目前发展比较迅速的一种新的编程方法。它是面向过程、面向对象方法的进一步发展。AOP通过引入了方面概念,改进了关注点的分离(separation of concerns),减少代码缠结(code tangling),解决了横切关注点(crosscutting concerns)的问题,可以提高软件质量和效率。文章对AOP的基本概念、技术特点和AOP的技术框架现状进行了相关介绍。  相似文献   

11.
基于AOP的面向对象程序的单元测试   总被引:1,自引:0,他引:1       下载免费PDF全文
张艳  赵建军  冯斌 《计算机工程》2007,33(22):76-79
单元测试被视为横切关注点,在软件测试过程中很重要。而面向方面编程(AOP)的主要目标就是分离横切关注点,因此,单元测试非常适合用AOP来解决。该文提出了在对面向对象程序进行单元测试时遇到的问题,并用AOP方法加以解决,同时比较了传统方法和AOP方法进行单元测试的优缺点。  相似文献   

12.
扩展UML用于面向方面的建模   总被引:3,自引:0,他引:3  
曾路  张立臣 《微机发展》2004,14(12):106-107,110
面向方面编程(AOP)向用户提供了把贯穿特性模块化和编排的能力,以便获得最大的代码重用以及解决代码混乱的问题。然而,目前还没有合适的对AOP的建模语言。文中讨论了一种扩展UML用于面向方面的建模的方法,并通过一个例子来说明这种方法的应用。  相似文献   

13.
AOP技术在面向用户的软件组件测试中的应用   总被引:1,自引:0,他引:1  
面向方面编程AOP(Aspect-Oriented Programming)是一种支持横切关注点的分解技术,表达了更高的抽象层次,能够提供明确的截获横切结构的语言机制.讨论AOP技术在面向用户的软件组件测试技术中的应用,分析了如何使用AOP提高组件测试的可维护性和可复用性.  相似文献   

14.
The development of accessible Web software is complicated for several reasons. Though some of them are technological, the majority are related with the need to compose different and, many times, unrelated design concerns which may be functional as in the case of most of the specific application’s requirements, or non-functional such as Accessibility itself. In this paper, we present a novel approach to conceive, design and develop Accessible Web applications in an aspect-oriented manner. In order to reach our goal, we provide some modeling techniques that we specifically developed for handling the non-functional, generic and crosscutting characteristics of the Accessibility concerns. Specifically, we have enriched User Interaction Diagrams with integration points, which are used to reason and document Accessibility for activity modeling during user interface design. Then by instantiating a Softgoal Interdependency Graph template with association tables, we work on an abstract interface model (composed by ontology widgets) to obtain a concrete and accessible interface model for the Web application being developed. We use a real application example to illustrate our ideas and point out the advantages of a clear separation of concerns throughout the development life-cycle.  相似文献   

15.
关于AOP实现机制和应用的研究   总被引:20,自引:2,他引:20  
AOP(Aspect-Oriented Programming)是一种支持横切关注的分解的技术,表达更高的抽象层次。它对于横切关注点就像面向对象程序设计对于对象封装和继承一样,提供了能够明确捕获横切结构的语言机制。一个模块化良好的横切关注点叫一个侧面(aspect)。首先介绍了AOP的基本思想,然后针对侧面代码和功能代码的编织问题讨论了几种典型的AOP实现机制的特点,优势及缺陷,最后展望了AOP的应用和发展方向,为进一步研究提供参考。  相似文献   

16.
刘敬勇  张立臣  陈成 《计算机工程》2009,35(17):252-254
实时系统有许多难以处理的横切整个系统的非功能需求。针对以上问题,提出基于面向方面模型驱动架构的实时系统开发方法。该方法在设计阶段将系统的非功能需求从功能需求中分离出,以降低系统开发的复杂性,提高系统的可重用性、可维护性和横切关注点的模块化程度。通过应用实例证明该方法是有效的。  相似文献   

17.
Aspect-Oriented Requirements Engineering focuses on the identification and modularisation of crosscutting concerns at early stages. There are different approaches in the requirements engineering community to deal with crosscutting concerns, introducing the benefits of the application of aspect-oriented approaches at these early stages of development. However, most of these approaches rely on the use of Natural Language Processing techniques for aspect identification in textual documents and thus, they lack a unified process that generalises its application to other requirements artefacts such as use case diagrams or viewpoints. In this paper, we propose a process for mining early aspects, i.e. identifying crosscutting concerns at the requirements level. This process is based on a crosscutting pattern where two different domains are related. These two different domains may represent different artefacts of the requirements analysis such as text and use cases or concerns and use cases. The process uses syntactical and dependency based analyses to automatically identify crosscutting concerns at the requirements level. Validation of the process is illustrated by applying it to several systems and showing a comparison with other early aspects tools. A set of aspect-oriented metrics is also used to show this validation.  相似文献   

18.
AOP技术在J2EE系统构建中的应用   总被引:2,自引:0,他引:2  
在应用系统构建中,如何处理系统中的横切关注点问题是系统开发成功的关键。用OO技术来实现这些横切关注点,会导致系统侵入式实现,难于理解和维护。而AOP技术是用来模块化横切关注点的新技术。使用AOP技术来实现横切关注点,使得实现容易设计、理解和维护。而且AOP技术使系统开发高效、高质量,更有能力来实现新的特征。Spring是一个实现控制反转模式(IOC)和面向方面(AOP)的轻量级容器框架,它是用来帮助解决企业应用系统中公共问题和处理企业应用系统开发的复杂性。文中介绍了AOP的基本概念和Spring框架,并举例说明了AOP技术在J2EE系统中应用。  相似文献   

19.
Web service orchestration represents an open and standards-based approach for connecting web services together leading to higher level of business processes. Business Process Execution Language (BPEL) engines are designed to handle this orchestration. However, web service compositions into BPEL suffer from several non-functional requirements such as security. To address this problem, we propose in this paper a novel approach that is based on a harmony between the licensing concept offered by eXtensible rights Markup Language (XrML), aspect-oriented programming (AOP), and web service compositions in BPEL. Our proposed approach, based on XrML, offers the ability to associate security licenses with activities offered by the composite web services. It allows to automatically generate BPEL aspects depending on the developed licenses, to separate between crosscutting concerns of the composed web services, and provides an easy way to include and update the non-functional requirements (e.g., security) into a BPEL process. It offers also the ability to validate the licenses, at runtime and without affecting the business logic of this model. To evaluate our approach, we have developed an inventory control system (ICS) sample that is composed of several web services. Case study and performance analysis are presented to demonstrate its feasibility as well.  相似文献   

20.
AOP技术及其在并发访问控制中的应用   总被引:8,自引:1,他引:7  
面向方面编程(Aspect-Oriented Programming,AOP)是面向对象编程(Object-Oriented Programming,OOP)的一种扩展技术,能很好地解决横切关注点问题以及相关的设计难题,被认为将成为一种有深远影响的新的程序设计范型犤3犦。该文在比较分析传统的OOP方法在解决横切关注点问题不足的基础上,引入AOP技术,展示了AOP编程范型的原理和框架,分析了它对软件开发方法带来的革命性影响,最后以AspectJ为例,给出了一个AOP在并发访问控制中的实现。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号