2010-01-15 3 views
3

Я застрял, и я был бы признателен за ваше мнение по этому вопросу. Я хочу реализовать INotifyPropertyChanged для своих объектов. Я не могу понять, какой путь является лучшим и почему. Единственное очевидное отличие для меня в том, что AoP немного быстрее, так как все делается во время компиляции при использовании IoC/DI, проще изменить поведение последнего. Итак, какой из них вы бы использовали (или использовали в прошлом) и почему?INotifyPropertyChanged: AoP или IoC/DI?

спасибо.

Пожалуйста перефразировать мой вопрос, я не носитель языка

+0

Мне очень сложно перефразировать вопрос, который я не понимаю;) – hackerhasid

+0

И мне тяжело описать мою проблему: / –

ответ

1

Как правило, если вы хотите обеспечить поведение во многих различных классов прозрачным образом, АОП путь. Часто AOP можно настроить с помощью DI/IoC, поэтому оба они не являются взаимоисключающими. Не понимая, какую технологию вы используете, я не могу дать более конкретные советы, чем это. В Java, например, я бы использовал структуру DI, такую ​​как Spring, в сочетании с AspectJ, чтобы установить это. Я не уверен, что эквивалентные технологии находятся в .NET.

Имейте в виду, что вы заплатите штраф за исполнение, если вы вводите поведение во многие мелкозернистые объекты в своем приложении, поэтому вы можете подумать, стоит ли использовать эту функцию для компрометации производительности. К счастью, одним из преимуществ AOP является то, что вы можете легко включать/отключать pointcuts, что позволит вам измерить разницу в производительности.

Смежные вопросы