JS Design Patterns
In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system. (Source https://en.wikipedia.org/wiki/Software_design_pattern)
General
- 01-Constructor Constructor
- 02-Module Module
- 03-Singleton Singleton
- 04-pub-sub 04-psub
- 05-Mediator Mediator
- 06-Facade Facade
- 07-Factory Factory
- 08-Decorator Decorator
- 09-Adaptor Adaptor
- 10-Proxy Proxy
- 11-Observer Observer
- 12-Bridge Bridge
- 13-Memento Memento
Advanced
- circuit-breaker.js Circuit Breaker
- Microservice Bulkhead: Failure of any component should not propagate to other components.
- Rete Limiter, Debouncer, Throttler