CSC/ECE 517 Fall 2009/wiki3 5 SD: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 1: Line 1:


== Dependency inversion principle ==
 
= <center>'''Dependency inversion principle''' </center> =
 


The Dependency Inversion Principle(DIP) states that:
The Dependency Inversion Principle(DIP) states that:

Revision as of 04:04, 12 November 2009


Dependency inversion principle

The Dependency Inversion Principle(DIP) states that:

  1. High-level modules should not depend on low-level modules. Both should depend on abstractions.
  2. Abstractions should not depend upon details. Details should depend upon abstractions.

Description

In conventional application architecture, lower-level components are designed to be consumed by higher-level components which enable increasingly complex systems to be built. In this composition, higher-level components depend directly upon lower-level components to achieve some task. This dependency upon lower-level components makes applications rigid, fragile and immobile.