JavaScript(Vanilla/ES6/TypeScript) and Java (GoF) design patterns
A design pattern is a general repeatable/reusable solution to a commonly occurring problem with a given context in software design. It can be treated as a description or template for how to solve a problem that can be used in many different situations.
- Singleton
- Factory Method/Factory
- Abstract Factory
- Builder
- Prototype
- Adapter
- Bridge
- Composite
- Decorator
- Flyweight
- Proxy
- Facade
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
- Request response
- push
- short polling
- long polling
- Server Sent Events
- Publish Subscribe(Pub/Sub)
- Multiplexing and Demultiplexing
- Stateful and Stateless
- Sidecart pattern