利用IOC和AOP实现一个简单框架(完整)
实现框架之前,我想先讲一讲为什么我会写这篇文章。
暑假期间,我在一家软件公司实习。在8月15这天(周一)早上,项目小组组长对我说:“IOC和AOP在项目中经常用到,我希望你能用这两种技术实现一个简单框架”。
"IOC”、"AOP",我的天,我听都没听过,这是什么。组长说:"我
http://www.cyqdata.cn/cnblogs/article-detail-52729
MSBuild + MSILInect实现编译时AOP-改变前后对比
实现静态AOP,就需要我们在预编译时期,修改IL实现对代码逻辑的修改。Mono.Cecil就是一个很好的IL解析和注入框架,参见编译时MSIL注入--实践Mono Cecil(1)。
我的思路为:在编译时将加有继承制MethodInterceptBaseAttribu
http://www.cyqdata.cn/cnblogs/article-detail-42761
MSBuild + MSILInect实现编译时AOP之预览
在本文之前的前几篇浅谈.NET编译时注入(C#-->IL)、浅谈VS编译自定义编译任务—MSBuild Task(csproject)、编译时MSIL注入--实践Mono Cecil(1)已经讨论了MSBuild和Mono.Cicel。在这
http://www.cyqdata.cn/cnblogs/article-detail-42715
Spring.net-AOP 搭建网站通知服务(1)
1、前言:
本文想分享一下搭建网站通知服务过程中的心得。这包括:AOP 在项目中的应用、面向对象设计与开发、单元测试的应用等。文后将整理出源码供参考。
需求分析,什么是网站通知服务?
在网站内发生某个事件时系统按照某种规则产生通知并发送给相关人。例如:用户注册成功后给用户发送欢迎电子邮件、当用户确认参加团购后向团购组织者发送通知等。
http://www.cyqdata.cn/cnblogs/article-detail-40932
如何利用AOP简化MVVM中Model和ViewModel的设计
这一篇谈一个MVVM中的一个虽然小但却很实际的问题,就是如何简化Model和ViewModel的设计。这是我们在项目中总结提炼的一些做法。 【备注】关于MVVM的概念,并不是本文的重点。如果你对MVVM还不熟悉,可以参考这里。关于MVVM与之前的MVP,MVC设计模式的渊源和比较,还有目前主流的几个MVVM框架的大致情况,我最近可能再会抽时间另外整理一篇,有兴趣的朋友关注一下。 有用过MVVM的
http://www.cyqdata.cn/cnblogs/article-detail-40733
利用AOP重构代码
AOP是什么? AOP是OOP的延续,Aspect Oriented Programming的缩写,即面向方面编程。AOP是GoF设计模式的延续,设计模式追求的是调用者和被调用者之间的解耦,AOP也是这种目标的一 种实现。 案例:在应用程序中,我们经常会对某一段程序做异常处理,或者是把一个方法的调用所消耗的时间体现在日志中,如果我们对每个方法都写具体的实现,我想并不是一件轻松的事情。对
http://www.cyqdata.cn/cnblogs/article-detail-40003
.Net语言中关于AOP 的实现详解
文章主要和大家讲解开发应用系统时在.Net语言中关于AOP 的实现。LogAspect完成的功能主要是将Advice与业务对象的方法建立映射,并将其添加到Advice集合中。由于我们在AOP实现中,利用了xml配置文件来配置PointCut,因此对于所有Aspect而言,这些操作都是相同的,只要定义了正确的配置文件,将其读入即可。对于Aspect的SyncProcessMessage(),由于拦截
http://www.cyqdata.cn/cnblogs/article-detail-39342
AOP in Asp.net MVC
不同的观点,开拓迥然不同的世界.
Another point of view can sometimes open up a whole new world.
http://www.cyqdata.cn/cnblogs/article-detail-39216
AOP---Unity使用初探
.Net下面实现依赖注入的框架有很多,如Spring.Net等等。微软也有自己的工具---Unity。作为企业库的一部分,Unity实现依赖注入也成为学习企业库比较重要的一环。微软给出的说法是【它是一个轻量级的、可扩展的依赖注入容器】。
对Unity高级用法,我还不是很熟悉,一下就简单说说它的初级用法,给初学者扫扫盲,高手就可以直接跳过了。如果我理解有误,还希望大鸟们不理赐教。
首先介绍一下开
http://www.cyqdata.cn/cnblogs/article-detail-36497
为什么要使用AOP?
在网上看到很多文章提到面向方面编程(Aspect-Oriented Programming),但一直没有搞清楚这样做有什么好处,为什么要使用AOP呢?
问题: 尽管面向对象编程与面向过程相比减少了代码的重复,但是它仍然留下了大量的重复代码。面向对象设计有助于最小化应用程序逻辑的代码重复,但是对于实现横切关注点的代码仍然很难实现模块化,例如日志,虽然我们可以使用类似于log4Net这样的类库来灵活的
http://www.cyqdata.cn/cnblogs/article-detail-35958
.Net中的Interception--一个简单的AOP框架学习
最近翻手头的dll文件时无意中发现了一个Interception实现,这个框架比起目前流行的AOP框架显的比较简漏,但却很好的体现出了.net下AOP是怎么实现的,于是就整理出来。
在.Net Unity2.0中的Interception,按三种方式实现:
1.TransparentProxy/RealProxy Interceptor 即Remoting代理机制。
2.Interface Int
http://www.cyqdata.cn/cnblogs/article-detail-35136
Spring.Net实现AOP以及AOP相关概念(学习笔记四)
Spring的重要应用是在AOP(Aspect- Oriented programming面向方面编程)编程方面。Spring.Net是如何进行AOP的呢?下面是我在学习Spring实现AOP的例子以及我个人的一些浅显的理解,若有不妥之处,还望大侠们指出。
本节重点分如下两部分:
1、Spring实现AOP。
2、AOP相关概念。
先介绍如何实现AOP,然后再通过使用过程中的用法,谈谈我自己对AOP概念的理解。
首先还是介绍一下开发环境以及软件版本:
VS版本:VS2008 SP1、Spring版本:1.3.0。
在我使用Spring.Net实现AOP的例子中有两个部分:1、使用编程方式实现。2、使用配置方式实现。实际在应用中,应用配置实现AOP还是相对更好点。实现AOP除了之前用到的程序集以外,还需使用程序集Spring.AOP。
1、Spring实现AO
http://www.cyqdata.cn/cnblogs/article-detail-277
使用PostSharp在.NET平台上实现AOP
摘要
本文首先介绍AOP(面向方面编程)的相关概念及理论,然后介绍如何使用PostSharp框架在.NET平台上实现AOP,最后对PostSharp的机制及AOP的优劣进行一个简单的分析。
AOP(Aspect-Oriented Programming)
AOP的基本定义及作用
根据维基百科的定义,“AOP(Aspect-Oriented Programming)是一种将函数的辅助性功能与业务逻辑相分离的编程泛型(programming paradigm),其目的是将横切关注点(cross-cutting concerns)分离出来,使得程序具有更高的模块化特性。AOP是面向方面软件开发(Aspect-Oriented Software Development)在编码实现层面上的具体表现(面向方面软件开发AOSD是一个囊括面向方面分析、面向方面设计和面向方面编程等一系列概念的完
http://www.cyqdata.cn/cnblogs/article-detail-112