it-swarm.com.ru

Что такое инъекция зависимостей?

Возможный дубликат:
Что такое внедрение зависимости?

Весна - это основа, из которой появилась концепция Dependency Injection.

Какова цель DI? Как это выгодно? Как это реализовано?

58
user284291
67
Zaki

Какова цель DI?

Цель Dependency Injection состоит в том, чтобы уменьшить сцепление в вашем приложении, чтобы сделать его более гибким и легким для тестирования.

Как это выгодно?

Объекты не имеют жестко закодированных зависимостей. Если вам нужно изменить реализацию зависимости, все, что вам нужно сделать, это внедрить объект другого типа.

Как это реализовано?

Существуют различные методы внедрения зависимости. Проверьте статью Википедии , чтобы увидеть примеры каждого. Как только вы поймете это, вы можете начать исследовать различные структуры внедрения зависимостей.

23
Justin Niessner

Очень короткий,

Какова цель DI? При внедрении зависимостей объекты сами не определяют свои зависимости, зависимости вводятся им по мере необходимости.

Как это выгодно? Объектам не нужно знать, где и как получить их зависимости, что приводит к слабой связи между объектами, что значительно облегчает их тестирование.

Как это реализовано? Обычно контейнер управляет жизненным циклом объектов и их зависимостей на основе файла конфигурации или аннотаций.

12
nkr1pt

Попробуйте взглянуть на: http://martinfowler.com/articles/injection.html

6
pdbartlett

DI позволяет нам менять компоненты, улучшать тестируемость и обеспечивать слабую связь компонентов. DI позволяет разрешать зависимости во время выполнения, используя DI-контейнеры, такие как Windsor Castle, Unity, Spring.net, MEF, что позволяет приложениям быть расширяемыми.

1
TrustyCoder
0
PaulJWilliams