zoukankan      html  css  js  c++  java
  • LambdaAOP

    项目地址 :  https://github.com/kelin-xycs/LambdaAOP

    LambdaAOP

    一个 用 C# 实现的 使用 Lambda 表达式 的 AOP

    这是 一个 用 C# 实现的 使用 Lambda 表达式 的 AOP 。

    用 Lambda 表达式 来 实现 AOP 这个 想法 来自于 Polly.Net 。

    一开始 看到 Polly.Net 的 时候, 只看到 一堆 police.Handle() , police.Handle() , police.Handle() …… police.ReTry() ……

    就没看到 在 哪里调用 要执行的 方法 , 然后 就 觉得 , Polly.Net 这个 好像 AOP 啊 , 而且 这个 AOP 有点牛 , 有点 指哪打哪 的 意思 了 。 ^^

    后来看到 police.Execute( () => DoSomething() ) , 才 发现 , 哦 , 原来 是 通过 police.Execute( ) 方法 执行 的 , 而且 使用了 Lambda 表达式 。

    所以 就 觉得 Lambda 表达式 很适合 来 实现 AOP , 所以 就写 了 这个 项目 。

    通过 LambdaAOP , 可以 让一个 普通对象 乃至于 静态方法 瞬间 拥有 AOP 特性 , 也可以 瞬间 取消 。 即插即用 , 即拔即停 , 代码透明 , 绿色 环保 无污染 。 ^^ ^^ ^^

    这要 归功于 Lambda 表达式 在 语法 和 实现 上的 支持 。 实现 是指 System.Linq.Expressions 。

    System.Reflection , System.Reflection.Emit , System.Linq.Expressions
    这 3 者 是 关联 的 , 但 有意思 的 是 Expressions 是 归到了 System.Linq 。

    好了 不多说了 , 用法 和 原理 看代码 吧 。 :)

  • 相关阅读:
    linux开发基本库
    Configure,Makefile.am, Makefile.in, Makefile文件
    sql的其他语句
    sql 链接 查询
    sql的 select
    SQL语句:
    angular 指令系统(二)自定义指令:
    angularJS 指令系统
    angular JS 过滤器
    angularJS 控制器
  • 原文地址:https://www.cnblogs.com/KSongKing/p/9455265.html
Copyright © 2011-2022 走看看