永发信息网

什么是面向切面编程AOP

答案:1  悬赏:40  手机版
解决时间 2021-10-20 21:39
什么是面向切面编程AOP
最佳答案
面向对象的编程主要注重核心业务,而面向切面编程主要关注一些不是核心的业务,但又是必须的辅助功能,比如一个完整的系统中,记录平时系统运行时抛出的异常,需要我们去记录,以便我们对系统尽快的修复。这就是我们常用的日志。如果对一些要求比较重要的数据操作,事务是不可少的,如金融系统,这样的数据很重要,每步操作都很重要,我们就应该用到事务处理。这就是我们常用的事务处理。可根据你的系统数据的重要性,有选择的应用。还用一个常用的就是安全验证了,它也是常用的,对于不同的页面,访问的身份也不一样。这就是我们常用的身份验证。以上这些不是针对特定那个业务模块的,可能针对所有的模块。它们只是一些附加的功能,相对模块的主功能而言。如果在每个模块中都夹杂着这些不是核心业务的代码,看起来与核心业务有点关系,但这样处理,会对以后的维护比较头疼。同时也违背了面向对象的一条原则, 自己对自己负责 面向方面的编程主要是辅助核心业务的,它并不是核心业务,但它又是不可缺少的。我们可以这样理解它与面向对象思想的联合使用。其实面向方面编程就是把那些夹杂在核心业务方法里面的代码抽取出来并模块化,把它们单独看成一个模块功能.来与核心业务共同完成比较完善的功能. 面向方面编程( Aspect-Oriented 就是把那些不是核心业务应该处理的代码提取出来,进行封装成模块化.来处理那些附加的功能代码 .(如日志,事务,安全验证)我们把这个模块的作用理解为一个切面,告诉我们它是一个功能模块.我们可以把它看成一个切面.说白了就是我们写一个类,在这个类中写一些处理在核心业务中起到同样效果的方法.这样大家应该明白了吧.专业的概念就是那么难理解.  第二个:连接点(Joinpoint),简单的理解就是在切面模块中定义的方法.就是上面定义类中的方法.  第三个:切入点(Pointcut).就是连接点的集合,就是一组方法的集合了. 以下几个就比较理解了,目标对象就是要处理的核心业务了.代理就更容易理解了,让一个代理去完成这个任务.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
女性气虚吃什么
二手房交易需要交担保费么?有哪位了解?
官路村委员会地址在什么地方,想过去办事,
南乐县疾控中心龙翔驾校体检站地址在哪,我要
求助、谁知道海口哪个地方有卖宠物狗的、要是
exo今晚在哪个电视台
比嘉品牌内涵是什么呢?
坚果手机来电铃声小,明显比媒体声音小,怎么
宝宝拉屎你们是用什么擦的宝宝拉屎你们是用什
电脑音箱有嗡嗡声
彭州水电安装哪家做的不错?谁能够指点一下?
墙的基层是用腻子粉+水好还是滑石粉+胶水好啊
上海的公司 怎么样才能拿到独生子女补贴
手脚冰凉手脚冰凉怕冷怎么办呢
如何用《几何画板4.06》画对数?
推荐资讯
贷款买房房产证在哪里?请问都要什么手续
如何到白沙泉
有人用过“盈派”的火锅电磁炉吗?我准备开火
2016年上海推拉门展会什么时间举办?有哪位能
白术内金糕有哪些功效?
成都有好吃的海南鸡饭吗?在哪?
石家庄各大车站到河北新华冶金
自动档汽车,PNDLS档位,和1234是什么意思?
谁能告诉我坂田附近电影院名字
为什么耳洞后面穿不过去
二年级下册故事大全
头被球撞了一下,为什么头很疼?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?