Inversion of control
From CSSEMediaWiki
(Difference between revisions)
m |
BenMcDonald (Talk | contribs) m |
||
Line 1: | Line 1: | ||
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. | 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 | factory pattern]] is an example of Inversion of control. | The [[Abstract Factory | factory pattern]] is an example of Inversion of control. |
Revision as of 18:50, 2 September 2009
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.