Inversion of control
From CSSEMediaWiki
(Difference between revisions)
BenMcDonald (Talk | contribs) (New page: Inversion of control is a software design principle that describes the flow of control being removed from central control. Martin Fowler describes this principle under the name [[Depe...) |
m (Reverted edits by Ebybymic (Talk); changed back to last version by BenMcDonald) |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | Inversion of control is a software design principle that describes the flow of control being removed from central control. | + | Inversion of control is a software design principle that describes the flow of control being removed from central control. It is named Inversion of control because in procedural code it is common for control to be managed from a central code base. Inversion of control is proposed as an inversion of this control model. |
− | [[Martin Fowler]] describes this principle under the name [[Dependency | + | [[Martin Fowler]] describes this principle under the name [[Dependency injection]]. See Martin Fowler - 'Inversion of Control Containers and the Dependency Injection Pattern' [http://www.martinfowler.com/articles/injection.html] |
− | The [[Abstract Factory | | + | The [[Abstract Factory | factory pattern]] is an example of Inversion of control. |
Latest revision as of 03:11, 25 November 2010
Inversion of control is a software design principle that describes the flow of control being removed from central control. It is named Inversion of control because in procedural code it is common for control to be managed from a central code base. Inversion of control is proposed as an inversion of this control model.
Martin Fowler describes this principle under the name Dependency injection. See Martin Fowler - 'Inversion of Control Containers and the Dependency Injection Pattern' [1]
The factory pattern is an example of Inversion of control.