Design Pattern Day 2
Design Pattern Day 2
Design
Patterns
Jherzon Nava – Noviembre
2024
TIGO Bolivia
OOP
Object Oriented Relations between classes
Programing
Association
Aggregation
Composition
Class
Inheritance
Object
Dependence
Realization
Interfac
e
UML
Software
Architecture
C4
Design Patterns
Software
Creational Patterns:
Entity-Attribute-Value (EAV)
Circuit Breaker Architecture
Singleton Retry Pattern
Factory Method
Abstract Factory
Model
Normalization
Timeouts
Bulkhead Pattern
Patterns
Builder Denormalization Fallback Pattern
Prototype Event Sourcing Timeout and Retries with
Structural Patterns: CQRS (Command Query Exponential Backoff
Layered Architecture
Responsibility Segregation) Compensation Transactions (Saga Event-Driven Architecture
Adapter Database Sharding Pattern) Client-Server Architecture
Bridge Factory Method Pattern (for Rate Limiting Monolithic Architecture
Composite Database Models) Idempotency Service-Oriented Architecture (SOA)
Singleton Pattern
SCOPE
Decorator Asynchronous Communication Broker Architecture
Facade Repository Pattern
Model-View-Controller (MVC)
Flyweight Transaction Script Pattern
Model-View-ViewModel (MVVM)
Proxy Data Mapper Pattern
Dependency Injection (DI) Hexagonal Architecture (Ports and
Behavioral Patterns: Caching Adapters)
Service Locator Pattern
Publish/Subscribe (Pub/Sub) Factory Method Pattern CQRS (Command Query Responsibility
Chain of Responsibility Leaderboards Segregation)
Abstract Factory Pattern
Command Queueing Pipeline Architecture
Singleton Pattern (for Shared
Interpreter Set Operations Peer-to-Peer (P2P) Architecture
Dependencies)
Iterator Rate Limiting Space-Based Architecture
Lazy Initialization Pattern
Mediator Session Management Domain-Driven Design (DDD)
Inversion of Control (IoC)
Memento
Observer
Distributed Locks
Bloom Filters
Adapter Pattern (for Interface
Adaptation)
Microservices
State
Strategy
Geospatial Indexing Facade Pattern (for Architecture
Event Sourcing Simplified Access)
Template Method Time Series Data Composite Pattern (for
Visitor
Managing Complex
Dependencies)
Software Architecture Patterns
Create User
Persistantce Layer
Purchase
Users API Services API
API
Database Layer
Microservices
Architecture
Create User
Presentation Layer