代码改变世界

随笔分类 -  面向方面AOP

沿着“重用”我们一路走来——SA、OO(DP)、Component、SOA、AOP

2009-08-24 20:17 by 宝宝合凤凰, 522 阅读, 收藏,
摘要: 自从有了软件开发以来,消除重复,提高软件的重用性就一直是我们所追求的一个重要目标,本文将围绕着这一主题,带大家重走一遍结构化(SA)、面向对象(OO)与设计模式(Design Pattern)、组建化(Component)、面向方面(AOP)直至面向服务(SOA)这条软件开发技术的发展之路。让我从“重用”这么一个简单甚至是片面的的角度让大家对这些出现在众多文章中的名词有一个... 阅读全文

颠覆C#王权的“魔比斯环” — 实现AOP框架的终极利器

2009-02-07 11:28 by 宝宝合凤凰, 410 阅读, 收藏,
摘要: 颠覆C#王权的“魔比斯环” — 实现AOP框架的终极利器 本文为原创,如需转载,请注明作者和出处,谢谢!本文曾发表于IT168:http://tech.it168.com/j/n/2007-05-09/200705091133359.shtml时间要追溯到2005年。那时正在做硕士论文。题目是“AOP framework for .net”。这个AO... 阅读全文

Reflection.Emit使用[Good]

2009-02-07 10:39 by 宝宝合凤凰, 990 阅读, 收藏,
摘要: Reflection.Emit使用(1) Posted on 2004-06-02 15:02 hbifts 阅读(2008) 评论(2) 编辑 收藏 网摘 所属分类: .NET --自从开始开发AOP.NET以来,一直在使用Reflection.Emit里的类和函数.由于Emit的中文资料好像不是很多.现在记录一些使用方法吧,算心得吧.:PReflection.Emit的作用是能够在程序运行... 阅读全文

使用动态代理,提高工作效率

2009-02-07 10:28 by 宝宝合凤凰, 299 阅读, 收藏,
摘要: 使用动态代理,提高工作效率 Posted on 2008-05-21 17:42 zhuweisky 阅读(2926) 评论(11) 编辑 收藏 网摘 所属分类: Emit --动态代理的一个最主要的应用场合就是实现AOP - 截获方法调用,加入自己的预处理、后处理或Around处理。我在ESBasic.Emit中实现了对这些截获的支持。首先,介绍两个截获者: ///<summary&... 阅读全文

当泛型的参数类型是动态的...

2009-02-07 10:23 by 宝宝合凤凰, 463 阅读, 收藏,
摘要: 当泛型的参数类型是动态的... Posted on 2007-04-26 17:58 zhuweisky 阅读(3719) 评论(17) 编辑 收藏 网摘 所属分类: Emit --在使用泛型技术时,我们经常使用静态泛型参数,即泛型的参数类型在编译时就已经确定,比如:IList<int>list=newList<int>();集合IList的泛型参数是int类型,这在编... 阅读全文

动态代理DynamicProxy 介绍

2009-02-07 10:21 by 宝宝合凤凰, 456 阅读, 收藏,
摘要: 动态代理DynamicProxy 介绍 Posted on 2007-04-27 10:48 zhuweisky 阅读(3175) 评论(7) 编辑 收藏 网摘 所属分类: Emit --我在前文当泛型的参数类型是动态的... 中以一个简单的例子引出了动态代理,我们使用动态代理,主要是因为动态代理拥有这样的能力--使得某个类型A在运行的时候能转化为一个指定的接口I,即使这个类型A在定义的时候并... 阅读全文

如何使用动态代理实现权限验证

2009-02-07 10:06 by 宝宝合凤凰, 425 阅读, 收藏,
摘要: 如何使用动态代理实现权限验证 AOP(即面向方面编程)的一个最重要的职责就是把那些与业务无关的方面剥离出来,开发人员在开发业务模块的时候不用去考虑什么权限管理,日志记录等,其实这些都是很公用的部分,应该有单独的模块去做这样的事情。而动态代理是实现AOP的一个关键技术,其通过动态为目标类生成代理的方式,动态织入相关的代码,扩充被代理类的功能。听起来似乎挺神奇的,马上我将给大家展示动态代理的奇妙之处... 阅读全文

实现.net下的动态代理

2009-02-07 09:58 by 宝宝合凤凰, 452 阅读, 收藏,
摘要: 实现.net下的动态代理 一、动态代理可以解决哪些问题本文描述的动态代理可以解决以下问题:问题1:接口约束问题场景A:ComboBox类与ToolStripComboBox类的行为大部分相似,它们却不共享某个粒度较大的接口,以至于对这两个类的操作代码难以公用。场景B:在泛型程序中,我们必需为泛型类型声明一个接口约束,才能使用该类型所对应接口约束的方法与属性。这样以来有一个问题:存在接口A,类型B,... 阅读全文

两种AOP实现方式的性能比较

2009-02-06 00:12 by 宝宝合凤凰, 702 阅读, 收藏,
摘要: 两种AOP实现方式的性能比较 AOP(Aspect-Oriented Programming,面向方面编程),它是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。我们把软件系统分为两个部分:核心关注点和横切关注点。业务处理的主要流程是核心关注点,与之关系不大的部分是横切关注点。横切关注点的一个特点是,他们经常发生在核心关注点的多处,而各处都基本相似。比如... 阅读全文

C#应用AOP说明

2009-02-06 00:08 by 宝宝合凤凰, 2477 阅读, 收藏,
摘要: C#应用AOP说明NFramework 轻量级ORM框架AOP介绍什么是AOPAOP是aspect-oriented programming的简写。AOP的研究逐渐成为热门,有关AOP的描述,在CSDN文章中也有人做了比较周详的描述,也有一些对描述的争论。《aspectj in action》的描述我认为最为经典,理由是:该书是aspectj研发者的手笔,而aspectj目前也是最成熟AOP的工具... 阅读全文

我们为什么需要AOP

2009-02-06 00:07 by 宝宝合凤凰, 544 阅读, 收藏,
摘要: 我们为什么需要AOP 此文摘自IBM developerWorks原文请看:What is AspectJ本节简单介绍AOP的概念,解释我们为什么需要AOP。 AOP是Object Oriented Programming(OOP)的补充。OOP能够很好地解决对象的数据和封装的问题,却不能很好的解决Aspect("方面")分离的问题。下面举例具体说明。比如,我们有一个Bank(银行)类。Bank有... 阅读全文

10分钟入门AOP:用PostSharp普及一下AOP

2009-02-06 00:04 by 宝宝合凤凰, 342 阅读, 收藏,
摘要: 10分钟入门AOP:用PostSharp普及一下AOP PostSharp是一个比较强调易学易用的AOP框架,在这之前我接触过AspectJ,Spring.当然花的时间也不多,不过一直感觉不好掌握,似乎AOP是比较难的东西。今天看到这篇英文论文里面的说明,似乎并不那么难以掌握。参考下图,对比一下两组概念。PS用了我们熟知的东西,而没有引入新名词,这是它聪明的地方。看表格右边的一组概念,事件(还不太... 阅读全文

基于Remoting透明代理的AOP实现

2009-02-06 00:01 by 宝宝合凤凰, 230 阅读, 收藏,
摘要: 基于Remoting透明代理的AOP实现 由于某些原因,这2天又拿起了关于AOP方面的资料来学习下。每一次的学习,都有更多的一些认识。在.Net下基于Remoting的实现,应该算是能“最大发挥“的实现了:),动态织入的实现,让其灵活而强大,当然也有其缺陷,比如方法调用要被拦截的类必须继承与ContextBoundObject对象,对于单继承的C#而言,缺陷不小!参考了Br... 阅读全文

SqlCenter中的AOP实现

2009-02-05 23:59 by 宝宝合凤凰, 292 阅读, 收藏,
摘要: SqlCenter中的AOP实现 在SqlCenter项目中实现了基于.Net Remoting 透明代理的AOP框架,取得了非常不错的效果.本文通过验证组件的实现,简单介绍下SqlCenter中AOP 的思想和运用:)验证组件,为了实现对类属性等的约束和判断的轻量级组件. 比如Filed实体中Name不能为空这个约束.对这个约束的判断就可以通过我们的验证组件实现. 如果Field属性Name不能... 阅读全文

AOP是什么

2009-02-05 23:54 by 宝宝合凤凰, 321 阅读, 收藏,
摘要: AOP是什么?(转自板桥里人 http://www.jdon.com/AOPdesign/jdon-aop.htm) 为什么要区分J2EE容器和J2EE应用系统?  我们知道,J2EE应用系统只有部署在J2EE容器中才能运行,那么为什么划分为J2EE容器和J2EE应用系统? 通过对J2EE容器运行机制的分析(见我的电子教材“EJB实用原理”),我们可以发现:实际上J2EE容... 阅读全文

关于AOP

2009-02-05 23:52 by 宝宝合凤凰, 255 阅读, 收藏,
摘要: 关于AOP 看了几天的Spring.Net,感受还是很多的.准备写点笔记.这里先贴些资源连接:Spring.Net : http://www.springframework.net/doc/reference/html/index.htmlSpring 中文手册: http://www.jactiongroup.net/reference2/html/AOP Home: http://aosd.n... 阅读全文