返回首页

之前我打地面编码,让我们去了一些在李林甫V1.0的功能,也将在2.0:
动态代理后期绑定/多分派鸭打字混入通用事件处理拉姆达参数的闭包契约式设计AOP的(静态和动态织)反转控制/依赖注入自适应对象模型一个MyXaml引擎克隆除了一个事实,即1.0有一个相当沉重的功能列表,我注意到源的一件事是,尽管有这些特点,李林甫本身并不真正使用自己的国际奥委会或DBC设施,以提高其质量自己的代码,那就是浪费机会

记住,我已经决定要实施以下特点:
反转控制/依赖注入 动态代理契约式设计静态AOP的织造建立一个IoC / DI容器将有助于强制执行的关注点分离,使用TDD的串联合同设计将消除超过90%的代码中的错误。为什么我还实施静态的AOP编织和动态代理发生器的原因是,必须有透明服务使用动态代理的实例,而无需凌乱的原始源代码注入这些合同的方式。此外,使用静态的AOP编织在调试版本中,将允许我动态地注入诊断代码,在不影响实际的发行版本。

李林甫的设计合同3.0,我的目标是使注射无关。这意味着该库本身就应该是完全不知道它是如何实际被注入到一个服务实例。这将允许你要注入1第三方的动态代理生成器(如为城堡)的合同,以及最重要的,它应该让李林甫的静态AOP的注入和其自己的代理发电机之间没有区别

也许最V1和V2之间,你会看到显着的差异是,李林甫将不再被分裂成多个项目(除了PostWeaver.exe,为LinFu.AOP的的MSBuild任务)。可能有一些人可能会说,聚集成一个DLL李林甫所有违反关注点分离的原则,但在实践中,它会为您节省无数头痛,管理你的项目依赖。

我意识到,重建李林甫是一个非常高的顺序,这个我把我的心脏和灵魂,以确保它是最好的,我永远写的代码。这将需要一些时间来重做,我会继续张贴在我的博客更新,随着时间的推移越来​​越多。{S0}

回答

评论会员:SwingSwis 时间:2012/02/06
推荐这些:



{A1}]
评论会员:GG123 时间:2012/02/06
?你要调用的异步客户端或服务器服务