[已解决问题] 事件、委托与AOP的联系是什么?
提问时间: 2008-04-07 12:02
悬赏分:30 浏览:292 次
在理解了事件、委托后,隐约觉得和aop有很大的联系,但是小弟的水平有限,肯请指点一下,事件、委托与aop之间的联系,或者说aop是不是可以用委托、事件来实现,肯请给些思路,最好的话写篇博文,哈哈~~
提问者:lexus - 初学一级

问题补充:目前在.net下的aop实现似乎都不太完美(个人认为,各位用什么aop的框架可否说一下)似乎不能对静态方法进行横切吧?
我对事件委托和aop还是有一定的了解,搜索了一番,java中有一个基于事件的aop实现框架。所以我想问的是,aop和事件委托之间是否有些技巧来帮助我们实现一个aop呢?


所有回答(3)
应该说AOP不是一种技术,它的全称为面向方面的编程。是一种设计的思想。理论上任何一个语言都可以实现。AOP的目的就是将各个平行模块之间的耦合降到最低。

目前,很多框架和开源的项目中引入了IOC(控制逆转)容器和DI(依赖注入)容器,可以帮助你更容易的实现AOP。

相对于这些容器来说,事件和委托是一个教紧的耦合关系(因为双方需要更多了解对方的实现)。

但是,相对于耦合性来说,性能也是一个项目中需要很多考虑的方面。因此,如果你没有很好的理解以上方法的优缺点之前(比如我),最好还是不要使用这些抽象的概念。对于项目的顺利进行没有任何好处。

---------------
更新:
IOC & DI也是一种设计思想,而IOC容器&DI容器就是这种思想的具体实现了。因此,我上面采用了IOC容器和DI容器的说法。
3个月前   回答者:Colin Han - 老鸟四级
AOP:面向方面编程,解决横切面关注点的重复代码问题,具体参考:http://wayfarer.cnblogs.com/articles/241024.html ,认真读一遍这篇文章,应该对AOP有进一步的认识了。

事件和委托(这里指C#的)跟AOP之间没有什么联系,可能在“后绑定”这个实现方式上有点类似的感觉,其实所有降低耦合的技术都有“后绑定”的影子,不能从这点说说它们之间有什么联系。
3个月前   回答者:Justin - 小虾三级
楼上的说得没错。张老师那系列文章写得很详细。
2个月前   回答者:笨→鸟(Bird) - 菜鸟二级
评论
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除