Почему инверсия управления и принцип инверсии зависимостей не являются шаблонами проектирования, а внедрение зависимостей?

Почему внедрение зависимостей является шаблоном проектирования, а инверсия управления и принцип инверсии зависимостей оба нет?

Мне они кажутся шаблонами проектирования, несмотря на их различия.


comment
Этот ответ SO, похоже, ссылается на IoC как на шаблон проектирования. Я считаю IoC шаблоном проектирования, а внедрение зависимостей - конкретной реализацией этого шаблона проектирования.   -  person Tim Biegeleisen    schedule 15.06.2019
comment
Внедрение зависимостей - это фактическая реализация архитектуры IOC. Архитектура - это способ размещения вещей. Внедрение зависимостей - это реализация, которая заставляет вещи, упомянутые ранее, взаимодействовать друг с другом.   -  person Nesan Mano    schedule 15.06.2019
comment
Согласно этим статьям Википедии «Внедрение зависимостей» - это не шаблон. Это имя использовал Боб Мартин в его статьях отчета о C ++ еще в 1994 году. Статья о принципах DI, на которую вы указываете, хотя и относится к принципам SOLID, поэтому DI называется Принцип есть.   -  person Panagiotis Kanavos    schedule 28.06.2019