【问题标题】:Is SPRING.Net the best framework for Aspect Oriented Programming(AOP)? [closed]SPRING.Net 是面向方面编程(AOP)的最佳框架吗? [关闭]
【发布时间】:2010-04-08 23:22:27
【问题描述】:

请告诉我使用特定框架的优点和缺点。

能否给我一些您在 .net 应用程序中使用 AOP 的成功示例?

【问题讨论】:

    标签: .net aop


    【解决方案1】:

    较早的帖子,但可能会帮助您了解产品和 AOP 实现的一些优缺点。

    http://ayende.com/Blog/archive/2007/07/02/7-Approaches-for-AOP-in-.Net.aspx

    【讨论】:

      【解决方案2】:

      到目前为止,我们已经将 Spring.Net AOP 用于将日志记录应用到应用程序的经典 AOP 示例。我没有使用任何其他可用于 .Net 的 AOP 框架。

      它工作得非常好,没有明显的性能影响,从我们的应用程序中删除了大量多余和重复的代码,并提高了日志记录覆盖率以及日志记录信息的质量和一致性。日志记录现在写在一个地方,配置在一个地方 - 一个巨大的改进。

      但有几点需要注意:Spring.Net AOP 要求建议任何对象至少实现一个接口;也就是说,如果要记录对对象的方法调用,该对象必须至少实现一个接口。此外,AOP 对建议的方法中的活动没有可见性;也就是说,您不能使用 AOP 实现的日志记录来记录方法中变量值的变化。

      然而,在实践中,如果您试图将 AOP 追溯应用到现有应用程序,这主要是个问题。无论如何,对接口进行编码是恕我直言的良好开发实践,如果您需要记录方法的内部工作,这很可能表明它们需要重构。

      AOP 确实需要一些计划来实施,并且在您的编码实践中确实需要一定的纪律,但是,就像自动化单元测试一样,恕我直言,这通常只能用于提高代码质量。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-09-03
        • 1970-01-01
        • 2011-06-27
        • 2015-04-28
        • 2010-11-27
        • 1970-01-01
        • 2010-10-26
        相关资源
        最近更新 更多