06 2019 档案

摘要:AssemblyBuilder和Activator两个类是DispatchProxy类实现动态代理以及AOP的根本,示例demo可参考 "DispatchProxy实现动态代理及AOP" 。AssemblyBuilder的命名空间是System.Reflection.Emit,没错就是你听过的Emi 阅读全文
posted @ 2019-06-20 17:53 又见阿郎 阅读(880) 评论(0) 推荐(0) 编辑
摘要:DispatchProxy类是DotnetCore下的动态代理的类,源码地址: "Github" ,官方文档: "MSDN" 。主要是Activator以及AssemblyBuilder来实现的( "请看源码分析" ),园子里的蒋老大提供的AOP框架Dora的实现也是大量使用了这两个,不过Dispa 阅读全文
posted @ 2019-06-20 14:38 又见阿郎 阅读(2207) 评论(2) 推荐(1) 编辑
摘要:通过策略模式来重构优化代码里面的switch/case分支代码。极大程度上提高了程序的扩展性。当然,如果分支比较多,每次都需要新增加一个类,这的确是有点麻烦,可以考虑使用反射来实现。 代码: 调用: 参考: "使用策略模式重构switch case 代码" 阅读全文
posted @ 2019-06-05 18:26 又见阿郎 阅读(611) 评论(0) 推荐(0) 编辑
摘要:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 观察者模式有四个角色:抽象主题、具体主题、抽象观察者、具体观察者。 抽象主题:把所有观察者对象的引用保存到一个聚集里,每个主题都可以有任何数量的观察者。 具体主题:将有关状态存入具体观察者对象; 阅读全文
posted @ 2019-06-03 21:10 又见阿郎 阅读(1970) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示