- Object Design Fundamentals
- OOP Principles and Design Patterns
- Interface Patterns: Adapter, Facade, Composite, Bridge
- Responsibility Patterns: Singleton, Observer, Mediator, Proxy, Chain of Responsibility, Flyweight
- Construction Patterns: Builder, Factory Method, Abstract Factory, Prototype, Memento
- Operation Patterns: Template Method, State, Strategy, Command, Interpreter
- Extension Patterns: Decorator, Iterator, Visitor
- Software Architecture and Architectural Patterns
- Domain-Driven Design and Clean Architecture
- Cloud Native Design Patterns
- Event Patterns and Event-Driven Architecture
- Reactive Event-Driven Systems and Reactive Programming
- Consistency, Concurrency, and Transactions in Event-Driven Systems
deepcloudlabs/cmp5151-software.design.patterns-2023.2024
CMP5151: Software Design Patterns (2023-2024)
JavaMIT