TL; DR версияЧто означает инъекция зависимости?
Можете ли вы объяснить концепцию инъекции зависимостей к «энтузиастам программисту» с фундаментальным пониманием программирования. т.е. Классы, функции и переменные.
Какова цель инъекции зависимостей, это чисто понятность/простота программирования или она также обеспечивает возможность компиляции во времени?
Моя оригинальная версия более waffly!
Мои навыки кодирования достаточно примитивны. (это не мое основное умение, но иногда это пригодится для доказательства концепции чего-то). Я могу взломать материал и заставить все работать, но я всегда прекрасно понимаю, что есть множество лучших/более эффективных способов делать вещи.
В первую очередь я отбрасываю вещи между функциями и классами и переменными! (как то, что я узнал на моем c64 давным-давно!)
Зависимость впрыска, кажется, повсюду в последнее время, и, хотя я думаю, что я ее получаю, я чувствую, что мне не хватает точки (или чего-то еще)
Проблема заключается в том, что, когда я пытаюсь разобраться в том, что происходит на фундаментальном уровне, она очень быстро становится очень сложной, и у меня болит голова (я - медведь с очень маленьким мозгом и большими словами, смущает меня!)
Так что я надеюсь, что кто-то может объяснить инъекцию зависимости к пятилетнему ребенку! Что это, зачем мне это нужно, как это делает мое кодирование лучше. (идеально работающий в понятиях функций, классов и переменных!)
Это, в основном, независимое от языка, кажется, что все языки используют, но мой язык выбора - это обычно C# (обычно ASP/MVC, хотя некоторые родные Windows/Console), хотя я недавно начал совать с Nodejs.
На самом деле, кажется, это дубликат этого вопроса - What is dependency injection?
(которые жили гораздо лучше, чем моя версия - это то, что я получаю за ячеистой ткани)
Инъекция кода или инъекция _dependency_? В любом случае ваш вопрос может быть вне темы для SO, потому что речь идет не о _ «[конкретной проблеме программирования] (http://stackoverflow.com/help/on-topic)», а скорее определении словаря. – MickyD
Я думаю, что я всегда объединял этих двух вместе в своих мыслях (я знаю, что это не так! Его просто то, что я не понимаю ни того, чтобы они сливались вместе в синергии недоразумения!) –
@ Микки моя мысль заключалась в том, что это подпадает под «практическую и ответственную проблему, которая уникальна для разработки программного обеспечения». Есть ли лучший сайт, на который можно задать такой вопрос? –