CPIT-252 Software Design Patterns Fall 2026

This course presents fundamental object-oriented design principles and the application of key design patterns.

Course Sections

SectionLectureLab
IT1MW 02:30-03:50AM; H2-6Thursday 09:00-10:40AM; L1-9
01MW 09:30-10:45AM; 129GThursday 08:00-9:40AM; 107G

Calendar

WeekTopicReadingsAssignments/Labs
45%
  • 1
  • Rabiʽ Al-Awwal 17th / August 30th
  • Introduction
  • Review of Core Object-Oriented Concepts
  • Java Collections and Generics
45%
  • 2
  • Rabiʽ Al-Awwal 24th / September 6th
  • Introduction to Design Patterns
  • Design problems
  • Classification of design patterns
    45%
    • 3
    • Rabiʽ Al-Thani 2nd / September 13th
    • Creational Design Patterns (I)
    • Singleton
    • Prototype
    • Chapter 3: Creational Design Patterns
    45%
    National Day Holiday — from Tuesday to Thursday
    • 4
    • Rabiʽ Al-Thani 9th / September 20th
    • Creational Design Patterns (II)
    • Builder
    • Factory method
      45%
      • 5
      • Rabiʽ Al-Thani 16th / September 27th
      • Creational Design Patterns (III)
      • Abstract factory
      • Creational patterns in real applications
      • Course project stage (I)
        45%
        • 6
        • Rabiʽ Al-Thani 23rd / October 4th
        • Structural Design Patterns (I)
        • Adapter design pattern
        • Bridge design pattern
        • Chapter 4: Structural Design Patterns
        45%
        First Midterm Examinations
        • 7
        • Rabiʽ Al-Thani 30th / October 11th
        • Structural Design Patterns (II)
        • Composite design pattern
        • Decorator design pattern
          45%
          • 8
          • Jumada Al-Awwal 7th / October 18th
          • Structural Design Patterns (III)
          • Façade design pattern
          • Flyweight design pattern
          • Proxy design pattern
            45%
            • 9
            • Jumada Al-Awwal 14th / October 25th
            • Structural Design Patterns (IV)
            • Proxy
            • Structural patterns in real applications
            • Course project stage (II)
              45%
              • 10
              • Jumada Al-Awwal 21st / November 1st
              • Behavioral Design Patterns (I)
              • Chain of responsibility
              • Command
              • Iterator
              45%
              Second Midterm Examinations
              • 11
              • Jumada Al-Awwal 28th / November 8th
              • Behavioral Design Patterns (II)
              • Mediator
              • Memento
              • Observer
                45%
                Fall Break — begins at the end of Thursday, November 19th, and continues through Saturday, November 28th
                • 12
                • Jumada Al-Thani 6th / November 15th
                • Behavioral Design Patterns (III)
                • State
                • Strategy
                • Template method
                  45%
                  • 13
                  • Jumada Al-Thani 20th / November 29th
                  • Behavioral Design Patterns (IV)
                  • Visitor
                  • Interpreter
                  • Behavioral patterns in real applications
                  • Course project stage (III)
                    45%
                    • 14
                    • Jumada Al-Thani 27th / December 6th
                    • Compound Patterns: Patterns of Patterns
                    • The Model-View-Controller (MVC) pattern
                        45%
                        • 15
                        • Rajab 4th / December 13th
                        • Lab exam and project demo