Creational is about instantiation, and Structural is the blueprint, then Behavioral is the pattern of the relationship.
Patterns where strategy of object collaboration and the delegation of responsibilities among objects is used as means of problem solving.
Patterns where strategy is focussed around relationships among entities are classified under Structural Design Patterns.
Patterns where strategy is driven around object instantiation process are classified under Creational Patterns.
- Model-View-Controller (MVC): Separates the application logic into three interconnected components: model, view, and controller.
- Model-View-ViewModel (MVVM): Separates the user interface into three components: model, view, and view-model.
- Repository: Mediates between the data source and the business logic, providing a consistent interface for accessing and manipulating data.
- Producer-Consumer: Coordinates the flow of data between producer and consumer threads.
- Mutex: Provides mutual exclusion to protect shared resources from concurrent access.
- Read-Write Lock: Allows multiple readers or a single writer to access a shared resource.
- Publish-Subscribe: Decouples the sender (publisher) from the receiver (subscriber) by introducing an intermediary (message broker).
- Request-Reply: Involves sending a request message and receiving a correlated reply message.