Design Patterns

PT5394
Summary
This course is designed to provide students with a thorough introduction to, and understanding of, the most critical design patterns. From basic design principles the course builds a solid foundation for patterns for software design in diverse areas including application development, concurrency and software architecture. A special anti-patterns section describes patterns that we should not emulate.
Prerequisites
Experience in software design or architecture is desirable, but not mandatory. At least 6 months of programming experience in Java, C# or C++ is highly desirable.
Duration
4 Days/Lecture & Lab
Audience
This course is designed for software developers, designers and architects who wish to learn advanced design techniques.
Topics
  • Design Pattern Overview
  • Critical Principles of Object-Oriented Design
  • Martins Principles of Package Architecture
  • Basic Object-Oriented Design Patterns
  • The 23 Gang of Four Patterns
  • Micro-Architecture and System Patterns
  • Concurrency Patterns
  • Pattern-Oriented Software Architecture
  • Process Patterns
  • Anti-Patterns (Learning from bad examples)

Related Scheduled Courses