Inversion of control

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
m
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 Injection]]. See Martin Fowler - 'Inversion of Control Containers and the Dependency Injection Pattern' [http://www.martinfowler.com/articles/injection.html]
+
[[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.

Personal tools