Inversion of Control

E811522

Inversion of Control is a software design principle where the flow of control is delegated from custom code to a framework or container, enabling more modular, testable, and loosely coupled systems.

All labels observed (2)

Label Occurrences
Inversion of Control canonical 2
IoC 1

How this entity was disambiguated

Statements (49)

Predicate Object
instanceOf architectural principle
software design principle
alsoKnownAs IoC
category design principles
software architecture
software engineering
changes flow of control in a program
commonIn .NET frameworks
linked to: .NET

Java frameworks
JavaScript frameworks
contrastsWith traditional procedural control flow
decouples application logic from infrastructure concerns
object creation from object usage
delegatesControlTo container
framework
enables easier unit testing
loose coupling
mocking of dependencies
plug-in architectures
separation of configuration from use
exampleFramework .NET Core dependency injection container
Angular
Inversion of Control containers (IoC containers)
Spring Framework
followsPrinciple Don’t call us, we’ll call you
hasGoal improve flexibility of software systems
improve maintainability
improve modularity
improve testability
reduce coupling between components
helpsWith reusing components across applications
substituting implementations at runtime
testing components in isolation
implementedBy dependency injection containers
service locator containers
promotes configuration-driven behavior
interface-based design
late binding of dependencies
relatedConcept Dependency Injection
Hollywood Principle
Service Locator pattern
supports configuration via annotations
configuration via code
configuration via metadata
usedIn component-based systems
enterprise application frameworks
object-oriented programming
plugin systems
web application frameworks

How these facts were elicited

Referenced by (3)

Full triples — surface form annotated when it differs from this entity's canonical label.

Dependency Inversion Principle relatedTo Inversion of Control
DIP relatedTo Inversion of Control
Inversion of Control alsoKnownAs IoC
linked to: Inversion of Control