面向方面编程的问答

  1. 面向方面编程是什么
  2. AOP技术、特性、程序设计、优势是什么

 

1.面向方面编程是什么

答:将传统的按功能或按对象换分程序模块的方法转化为按系统特征划分程序模块就是AOP的基本思想。面向方面编程是解决代码分散问题的,通过设计一个捕获应用程序横切面功能的结构来提前避免掉代码分散的现象。

横切功能有切入点和通知代码两部分组成,一个二方面只允许整合一个贯穿程序的功能到程序中,这个功能利用一个专门的API执行。AOP是面向服务开发的一种有效处理方式,同时面向方面开发对服务的控制和约束更加清楚。

 

2.AOP技术、特性、程序设计、优势是什么

答:AOP技术将与业务无关却被业务模块所共同调用的逻辑或责任封装起来,减少系统重复代码降低系统耦合度,利于可操作性和可维护性。AOP代表了一种横向的关系。AOP把系统分为两个部分,核心关注点和横切关注点,业务处理主要关注核心关注点,其余的部分是横切关注点。AOP的核心思想是将应用程序中商业逻辑同对其提供支持的通用服务进行分离。实现AOP技术有两大类,动态代理技术,利用截取消息的方式对消息进行装饰,取代原有对象行为的执行;静态织入方式,引入特定的语法创建方面,是编译器可以在编译期间织入有关方面的代码。连接点、切入点、通知、方面、引入等这些特性组成了基本的AOP技术,也是研究AOP技术的基本术语。

AOP特性是可扩展性、可重用性、易理解性和易维护性。

基于AOP的引用程序结构与传统高级语言的应用程序结构基本类似。AOP应用程序包括三个主要开发步骤:将系统需求进行功能性分解 ,区分普通关注点和横切关注点,确定需要用aspect形式的功能有哪些;单独完成每一个关注点的编码和实现,构造系统组件和系统aspect;用联接器指定的重组规则将组件代码和aspect代码组合,形成最终系统。

AOP提供了观测和分析系统的新视角,同时可以提高系统的可维护性。AOP属于新特性,这种新特性带来了质量和风险上的问题,例如测试方法改进、检测机制变动等。

AOP是一种概念,不同的技术可以有不同的实现,如AspectJ、Spring AOP、JBossAOP等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值