Инверсия управления <[закрытое] внедрение зависимости

20
задан John Leidegren 12 July 2010 в 07:39
поделиться

3 ответа

Если вы принимаете Определение Фаулера , инверсия управления является гораздо шире термин, чем DI, который охватывает все рамки использование, где вы подключаете в рамки, но каркас еще в контроле.

Например, в .NET, рамки, такие как ASP.NET или Windows Presentation Foundation, которые в конечном счете контроль, но предоставляют различные События и Швы можно использовать для создания приложения , То же самое верно и на других платформах.

Dependency Injection является специализация из IoC, который применяется IoC специально для управления зависимостями.

41
ответ дан 29 November 2019 в 23:14
поделиться

Да, IoC означает, что сам класс не управляет вещами, а вызывается извне. Инъекция зависимостей - это способ сделать это.

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

4
ответ дан 29 November 2019 в 23:14
поделиться

Это один из немногих пунктов, по которым мы с Марком не согласны. По моей книге, принцип инверсии управления принцип - такой же, как и здесь, поэтому я не буду его пересказывать.

Инъекция зависимостей - это просто акт экстернализации создания зависимостей компонентами во внешний мир.

Управление этими зависимостями (и многими другими вещами) - это то, чем занимаются контейнеры инверсии управления, а использование DI как части этого - всего лишь деталь реализации.

6
ответ дан 29 November 2019 в 23:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: