[讨论]突然有个想法,关于.Net事件和AOP模型

yzx110 2004-11-10 02:25:24
在.Net中,如果在每一个线程(Thread)、进程(Process)或者应用程序域(AppDomain)里面的每一个对象的创建销毁,每一个方法的调用的开始或者结束,每一个非托管资源的创建和销毁,每一个异常的产生等都能够通过事件来捕获,拿着样的话实现AOP不是简单很多么?
...全文
206 18 打赏 收藏 举报
写回复
18 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Miracle 2004-11-17
单纯用Attribute是没法很好的实现AOP的。各有利弊。其实COM+也是一种大量应用AOP的技术,大家都知道实现他要具备什么条件,不过没人觉得不正常。所以从MarshalByRefObject/ContextBoundObject继承也不是什么坏事。
  • 打赏
  • 举报
回复
amendajing 2004-11-16
mark
  • 打赏
  • 举报
回复
速马 2004-11-16
Miracle(新一代的开山怪)的是对的

只可惜这里必须为继承MarshalByRefObject/ContextBoundObject的对象
而最佳/最优雅的办法应该是Attribute...
  • 打赏
  • 举报
回复
Miracle 2004-11-15
当然要想利用这个方法-消息模型,是需要一些条件的,比如要从MarshalByRefObject/ContextBoundObject进行继承,等等。
  • 打赏
  • 举报
回复
Miracle 2004-11-15
事实上你所说的类似的东西在.NET中是存在的,.NET将所有的方法调用和返回映射为消息(IMessage接口及其子接口),这也是.NET AOP编程的基石。感兴趣的话可以看看Dan Box的《.NET本质论》
  • 打赏
  • 举报
回复
极客行天下 2004-11-14
哦?
  • 打赏
  • 举报
回复
timiil 2004-11-13
留痕
  • 打赏
  • 举报
回复
saucer 2004-11-12
Lostinet wrote something like that, see
http://blog.joycode.com/lostinet/archive/2004/05/26/22730.aspx

also see

Aspect-Oriented Programming Enables Better Code Encapsulation and Reuse
http://msdn.microsoft.com/msdnmag/issues/02/03/AOP/

AOP.NET
http://wwwse.fhs-hagenberg.ac.at/se/berufspraktika/2002/se99047/contents/english/aop_net.html



  • 打赏
  • 举报
回复
huangsuipeng 2004-11-12
楼上的
  • 打赏
  • 举报
回复
WilliamFire 2004-11-12
异常本身的性能开销就大,如果再加上委托来实现的话,是十分可怕的.因为.net中的委托是通过责任链来实现的,分派的对象太多,性能开销过于惊人.
  • 打赏
  • 举报
回复
Alden 2004-11-12
路过
  • 打赏
  • 举报
回复
速马 2004-11-11
CLR在处理这些东西的时候本来就只用了一个处理单元啊
我不相信不同的类型CLR会有不同的处理方法(string这样的类型除外)
所以和AOP无关
  • 打赏
  • 举报
回复
yichuan1982 2004-11-10
路过,帮顶一下
  • 打赏
  • 举报
回复
einsteincao 2004-11-10
没什么现实意义

就像明明知道面向对象的数据库比关系型数据库更为优秀一样

但是没有办法付诸实施


再说AOP还没有比较成熟的开发过程...
  • 打赏
  • 举报
回复
cxyPioneer 2004-11-10
up
  • 打赏
  • 举报
回复
haoztao 2004-11-10
也许吧
  • 打赏
  • 举报
回复
yzx110 2004-11-10
对啊,大家有什么想法呢? 我人为实现这样的模型应该没问题,不过可能实现出来后可能导致整个.Net程序性能下降,因为这个肯定要从clr入手的。
  • 打赏
  • 举报
回复
einsteincao 2004-11-10
AOP

是说的aspect - oriented program?
  • 打赏
  • 举报
回复
相关推荐
发帖
.NET Framework
加入

1.7w+

社区成员

.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
申请成为版主
帖子事件
创建了帖子
2004-11-10 02:25
社区公告
暂无公告