CSE687 - Object Oriented Design
Lecture #12 - Dependency Inversion Principle
Revised: 15 February 2009
Web Resources:
Stroustrup's Home Page,
Assoc. of C/C++ Users,
C++ at Microsoft,
Code Project,
Sells Brothers,
Guru of the Week,
C/C++ User's Journal,
devCentral,
Dr. Dobb's Journal,
Boost Library,
techNetCast
Content:
This lecture covers Interfaces, Object Factories, and the Dependency Inversion Principle.
-
Syllabus
Describes topics to be covered,
reading material for you to digest before coming to class, and due dates
for the assigned projects.
-
Project #2
Graph data type and Graph algorithms.
-
Project #2 Help
-
The Dependency Inversion Principle
Components should depend on abstractions, not other components.
-
Run-Time Type Indentification Presentation
RTTI is, perhaps, the antithesis of the Open/Closed Principle. Paradoxically, I used it building the trace class.
-
Exceptions
-
Exception demo
-
Enforcements
-
Design Presentation
Summarizes design issues for modules and classes.
-
Design Rules
Design rules and idioms that transcend Object Oriented Design.