Что такое инъекция зависимости? [дубликат]


Возможные Дубликаты:
Что такое инъекция зависимостей?

Spring-это фреймворк, из которого возникла инъекция зависимостей концепции.

какова цель DI ? Какая от этого польза ? Как это реализуется ?

6 54

6 ответов:

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

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

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

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

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

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

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

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

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

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

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

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