Patterns reveal solutions to a problem that recurs in multiple contexts. Design patterns are proven solutions to software design problems that are independent of platform or language. With a knowledge of design patterns, a designer or architect can leverage the collective knowledge and expertise of the software community. This course focuses on the 23 patterns in the classic Design Patterns book by the “Gang of Four” (GoF). Additional patterns include topic areas such as: Concurrency, Micro-Architecture, Pattern-Oriented Software Architecture (POSA), and Anti-Patterns.
At the end of the course, the student will be able to:
Explain the role and value of patterns
Articulate the Gang of Four patterns, and how they relate to each other.
Discuss trade-offs in applying various design patterns, and when to use each pattern.
Explain critically important design principles from Martin, Meyer and others.
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.
Please call 1-610-831-1151 for public enrollment and private, on-site pricing.
This 4-day 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.