【问题标题】:INotifyPropertyChanged: AoP or IoC/DI?INotifyPropertyChanged:AoP 还是 IoC/DI?
【发布时间】:2010-01-15 15:55:55
【问题描述】:

我被困住了,非常感谢您对这个主题的看法。我想为我的实体实现INotifyPropertyChanged。我不知道哪种方式最好,为什么。对我来说唯一明显的区别是 AoP 稍微快一点,因为一切都是在编译时完成的,而使用 IoC/DI 后更容易改变行为。那么您会实际使用(或过去使用过)哪一个?为什么?

谢谢。

请改写我的问题,我不是母语人士

【问题讨论】:

  • 我不明白的问题很难改写 ;)
  • 我很难描述我的问题:/

标签: c# inversion-of-control aop


【解决方案1】:

通常,如果您想以透明的方式在许多不同的类中强制执行某项行为,AOP 就是您要走的路。通常,AOP 可以通过 DI/IoC 进行配置,因此两者并不相互排斥。如果不确切了解您使用的是什么技术,我无法给出比这更具体的建议。例如,在 Java 中,我会使用像 Spring 这样的 DI 框架和 AspectJ 来设置它。我不确定 .NET 中的等效技术是什么。

请记住,如果您将行为注入到应用程序中的许多细粒度对象中,您将付出性能损失,因此您可能需要考虑拥有此功能是否值得在性能上进行权衡。幸运的是,AOP 的好处之一是您可以相当轻松地启用/禁用切入点,这可以让您衡量性能差异。

【讨论】:

    猜你喜欢
    • 2019-07-15
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多