5

It's my understanding that this used to be simply referred to as "reference passing" but later became formalized into a pattern that implemented a design principle and acquired the new name. Can you shed some light on the meaning and history?

  • Could this help? History of Dependency Injection (DI) : yauritux.wordpress.com/2011/04/03/… – user66974 Jul 17 '15 at 5:50
  • That's a useful explanation of meaning but it doesn't tell me much in the way of history. Who coined the term for example. @Josh61 – candied_orange Jul 17 '15 at 5:57
  • 1
    Martin Fowler has released a paper on the Dependency Injection pattern. This is his rebranding of the Inversion of Control that we hear so much about in the recent wave of lightweight frameworks. theserverside.com/news/thread.tss?thread_id=23358 – user66974 Jul 17 '15 at 6:36
  • 1
    It looks like the expression dependency injection was coined by Martin Fowler: en.wikipedia.org/wiki/Dependency_injection - *Martin Fowler's original article that introduced the term Dependency Injection ... – user66974 Jul 17 '15 at 6:49
  • 1
    @Josh61 Seems like you have enough references for a good answer there. – Barmar Jul 17 '15 at 15:12
2

It was almost certainly Martin Fowler who coined the term, and other responders have pointed to its first use in publication.

The reason for the choice of term appears to be that the concept of 'injection' was relatively new at the time. Other ways of getting a dependency in a class, such as inline instantiation, are essentially 'creation within', rather than 'insertion from the outside', which is what was new about this concept in the history of best practices for the writing of maintainable code - hence Fowler's 'injection'.

EDIT

This article, written in 2004, is the earliest known usage of the phrase: http://www.martinfowler.com/articles/injection.html#FormsOfDependencyInjection

The concept itself, previously known as the 'Dependency Inversion Principle', was first created by Robert C. Martin, in the mid-90's: http://www.objectmentor.com/resources/articles/dip.pdf

  • Hi, Sam Burns, and welcome to English Language & Usage. I realize that you may have omitted links to any references connecting Martin Fowler to the term "dependency injunction" in part because Josh61 cites three such references to Fowler in comments beneath the poster's question. However, at this site we especially value self-contained answers, and yours would be stronger and more complete if you linked to one or more references that bring together Fowler and the term in question. Please consider doing so. – Sven Yargs Jul 29 '15 at 18:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.