4 回答
TA贡献1817条经验 获得超6个赞
辅助一张图以说明,AOP字面意思就是面向切面编程,这么做的目的是让主程序在不知道切面存在的情况下,切面就可以帮助主程序完成其想要完成的功能,而不影响主程序的对象属性,以达到更好的面向对象的效果,听起来有点绕,举个例子说明:
例如你在编写一个用户登录的程序,主程序就是用户登录,用户登录你主要目的就是验证用户名、密码,找到用户的权限等事情,但是除了主要需要做的事情之外你可能还需要记录一下用户登录的日志,这个时候记录日志本身已经离开了登录的范畴了,势必就应该是另一个对象需要干的事情,这个时候就需要切面技术了,如上图你的程序是登录,则记录日志就是切面,他们交叉的地方就叫切点,你需要做的事情就是告诉切面,你程序的切点在哪里,那么切面就会自动帮助你完成记录日志这个工作了,这个思维方式就是面向切面编程也就是AOP。
那么他有什么好处呢?再比如,你的系统有很多功能都需要记录日志,那么你都只需要在想记录日志的时候告诉切面,你的切点在哪,切面就会自动的帮助你记录下所需要的日志。
TA贡献2012条经验 获得超12个赞
就是写一个类,这个类可以控制别的类……
这个类里可以写很多的占位符……
比如说:世界信息组织规定都用xml做为数据交换,于是C#写了很多方法来解析xml,Java也是,python也是。
这个xml其实就是AOP的思想。
一个人的思想本来是独立的,由本人自己来决定该干什么不该干什么,但是当这个人受控制于另一个人的思想的时候,就是控制者的来控制人的时候,这就是AOP了,
就是说用框架来控制框架,用类来控制类,用接口来控制接口,用电脑来控制电脑,用网页来编写网页的时候就是AOP
添加回答
举报