社区
.NET Framework
帖子详情
[讨论]突然有个想法,关于.Net事件和AOP模型
yzx110
2004-11-10 02:25:24
在.Net中,如果在每一个线程(Thread)、进程(Process)或者应用程序域(AppDomain)里面的每一个对象的创建销毁,每一个方法的调用的开始或者结束,每一个非托管资源的创建和销毁,每一个异常的产生等都能够通过事件来捕获,拿着样的话实现AOP不是简单很多么?
...全文
232
18
打赏
收藏
[讨论]突然有个想法,关于.Net事件和AOP模型
在.Net中,如果在每一个线程(Thread)、进程(Process)或者应用程序域(AppDomain)里面的每一个对象的创建销毁,每一个方法的调用的开始或者结束,每一个非托管资源的创建和销毁,每一个异常的产生等都能够通过事件来捕获,拿着样的话实现AOP不是简单很多么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
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
中的
AOP
系列之《将
AOP
作为架构工具》
返回《
.Net
中的
AOP
》系列学习总目录 本篇目录 编译时初始化和验证 编译时初始化 切面验证的正确用法 真实案例:复习线程 架构约束 强制架构 真实案例:NHibernate 多播 类级别多播 程序集级别多播 小结 本节的源码本人已托管于Coding上:点击查看。 本文实验环境:VS 2017 Community。 要有效地使用
AOP
,
AOP
自己的架构及其对大代码架构...
领域
模型
管理与
AOP
使用领域
模型
,很少会像创建实际领域
模型
类、然后使用它们那么简单。很快你就会发现,领域
模型
必须得到相当数量的基础架构代码的支持。 领域
模型
所需基础架构当中最显著的当然是持久化——通常是持久化到关系型数据库中,也就是对象/关系(O/R)映射出场的地方。但是,情况并不止持久化那么简单。在一个复杂的应用中,用来在运行时管理领域
模型
对象的部分占了基础架构的很大一部分。我将基础架构的这部分称为领域
模型
管...
Net中的
AOP
系列之《将
AOP
作为架构工具》
返回《
.Net
中的
AOP
》系列学习总目录 本篇目录 编译时初始化和验证 编译时初始化 切面验证的正确用法 真实案例:复习线程 架构约束 强制架构 真实案例:NHibernate 多播 类级别多播 程序集级别多播 小结 本节的源码本人已托管于Coding上:点击查看。 本文实验环境:VS 2017 Community。 要有效地使用
AOP
,
AOP
自己...
从壹开始前后端分离【
.NET
Core2.0 Api + Vue 2.0 +
AOP
+ 分布式】框架之七 || API项目整体搭建 6.2 轻量级ORM...
代码已上传Github,文末有地址 书接上文:《从壹开始前后端分离【
.NET
Core2.0 Api + Vue 2.0 +
AOP
+ 分布式】框架之六 || API项目整体搭建 6.1 仓储》,我们简单的对整体项目进行搭建,用到了项目中常见的仓储模式+面向接口编程,核心的一共是六层,当然你也可以根据自己的需求进行扩展,比如我在其他的项目中会用到Com...
一本你必须知道的
.net
《你必须知道的
.NET
》 作者简介:王涛 微软C# MVP,高级软件工程师,机械工程硕士,主要研究方向为
.NET
底层架构和企业级系统应用。现就职于某软件公司负责架构设计、软件开发和项目管理方面的工作。作者对
.NET
基础架构和CLR底层运行机制有浓厚的研究兴趣和造诣,熟悉ASP
.NET
、XML、SQL Server相关技术,对面向对象、设计模式和软件架构有一定的研究与实践经验。 第1部分
.NET Framework
17,748
社区成员
24,327
社区内容
发帖
与我相关
我的任务
.NET Framework
.NET技术 .NET Framework
复制链接
扫一扫
分享
社区描述
.NET技术 .NET Framework
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章