Learning Objectives

  • Describe the concept of a design pattern and its elements (name, problem, solution, and consequences)
  • Match the following design patterns to their descriptions
    • abstract factory
    • builder
    • factory method
    • prototype
    • singleton
  • Identify the most applicable design pattern(s) for a scenario

How to Complete this Lesson

Complete the following learning activities: (2.75–3 hours total)

  1. Watch History of Design Patterns and Pattern Format (4 minutes)
  2. Read the following in Software Engineering:
    • Chapter 7: Design and implementation (15 minutes)
      • Design patterns
  3. Read the following in Design Patterns: Elements of Reusable Object-Oriented Software:
    • Chapter 1: Introduction (15–20 minutes)
      • What Is a Design Pattern?
      • Design Patterns in Smalltalk MVC
      • Describing Design Patterns
      • The Catalog of Design Patterns
  4. Watch Factory Method Pattern and Factory Method Pattern Example (5 minutes)
  5. Watch Strategy Pattern and Strategy Pattern Example & Demo (9 minutes)
  6. Watch Other Common Patterns (4 minutes)
  7. Read the following from Tutorialspoints.com’s Design Patterns Tutorial (15–30 minutes)
  8. Watch Singleton (6 minutes)
  9. Participate in the synchronous session during the class meeting time (optional)
  10. Complete the quiz (5–8 minutes)
  11. Work on the specification
    • Write the section(s) assigned to you (60 minutes)
    • Review the sections written by others, ensuring that the specification as a whole is unambiguous (30 minutes)

Due

As a reminder, the following is due this lesson: