SEDS 519
Software Design Patterns
The principles of Object-Oriented concepts, such as abstraction, abstract data types, encapsulation, inheritance, polymorphism, aggregation are explained along with the key points of Object-Oriented analysis and design. Unified Modeling Language (UML) is utilized to express the artifacts of Object-Oriented analysis and design. Creational, structural, and behavioral Object-Oriented design patterns are examined and used to solve real-world problems. Resultant Object-Oriented designs are implemented in Java.
Week | Topics |
---|---|
1 | Introduction to Object-Oriented Analysis and Design |
2 | Inheritance and Polymorphism with Abstract Classes and Interfaces |
3 | Object-Oriented Programming Principles |
4 | Architectural Design Pattern – Model View Controller |
5 | Observer Design Pattern |
6 | Creational Design Patterns |
7 | Structural Design Patterns |
8 | Behavioral Design Patterns |
9 | Introduction to Patterns of Enterprise Application Architecture |
10 | Object-Relational Design Patterns |
11 | Introduction to Enterprise Integration Patterns |
12 | Messaging Design Patterns |
13 | Introduction to Domain-Driven Design |
14 | Microservice Design Patterns |