This course gives students a thorough grounding in traditional and modern approaches to OOAD. The primary goal is to enable delegates to create designs which can be translated into efficient and maintainable implementations. As the course progresses delegates also learn when and how to draw and apply the UML 2 diagrams. The course is workshop based, with delegates producing designs for sample problems and then trying to realize them in code.
This course is designed for experienced programmers who have a clear understanding of basic OO concepts. Examples are drawn from a variety of languages, including Java, C# and Ruby. Exercises can be conducted using any OO language.
3 Days/Lecture & Labs
- Introduction to OOAD
- Moving from Requirements to Analysis
- The Theory behind OOAD
- Modeling the Clients Business Using Domain Driven Design
- Design Patterns Used in Analysis
- Principles for Good Class Design
- Smells that Signal Bad Design
- Creating Fluent Interfaces
- Advice Specific to Java and C#
- Heretical Approaches to OOAD