3 lectures per week, 50 minutes each (3-0-3).
Designation: Elective Course
Course Level: Undergraduate
A depth study of object-oriented design patterns. How design patterns solve design problems? How to select a design pattern? How to use a design pattern? Detailed study of creational patterns, structural patterns, and behavioral patterns. Case studies.
E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software: Addison-Wesley, 1995.
Reference(s) and Other Material:
- A. Shalloway and J. Trott, Design Patterns Explained: A New Perspective on Object-Oriented Design, 2nd edition, Addison-Wesley, 2004
Upon completion of this course, students will have the ability to:
- Demonstrate sound knowledge of design patterns
- Communicate program structures using design patterns.
- Select appropriate design patterns for design problems.
- Apply patterns in new designs.
- Evaluate design patterns.
- Recognize patterns in designs
- Introduction to design patterns
- What is a design pattern?
- How design pattern solve design problems
- How to select a design pattern
- How to use a design pattern
- Creational patterns
- Abstract factory
- Factory method
- Structural patterns
- Behavioral patterns
- Chain of responsibility
- Template method