2010-01-15 61 views
3

我被卡住了,我很感激你對這個主題的看法。我想爲我的實體實施INotifyPropertyChanged。我無法弄清楚哪種方式是最好的,爲什麼。對我來說唯一明顯的區別是AoP速度稍快一些,因爲在使用IoC/DI的過程中,所有事情都是在編譯時完成的,但後者更容易改變行爲。那麼你會使用哪一個(或者過去使用過),爲什麼?INotifyPropertyChanged:AoP或IoC/DI?

謝謝。

請重新表述我的問題,我不是一個母語

+0

對我來說,我很難改寫一個我不明白的問題;) – hackerhasid 2010-01-15 15:59:49

+0

而且我很難描述我的問題:/ – 2010-01-15 16:01:34

回答

1

通常情況下,如果要強制執行以透明的方式在許多不同類型的行爲,AOP是要走的路。通常,AOP可以通過DI/IoC進行配置,所以兩者不是互斥的。如果不明確你正在使用哪種技術,我就不能給出比這更具體的建議。例如,在Java中,我會使用像Spring這樣的DI框架與AspectJ一起來設置它。我不確定.NET中的等效技術是什麼。請注意,如果您將行爲注入到應用程序中的許多細粒度對象中,您將會付出性能損失,因此您可能需要考慮是否有此功能值得性能取捨。幸運的是,AOP的好處之一是可以非常容易地啓用/禁用切入點,這將允許您衡量性能差異。