An open API service indexing awesome lists of open source software.

https://github.com/stuymedova/common-design-patterns

[WIP][LEARNING] Annotated Observer, Factory, Singleton, and so on
https://github.com/stuymedova/common-design-patterns

computer-science design-patterns interview-preparation typescript

Last synced: 15 days ago
JSON representation

[WIP][LEARNING] Annotated Observer, Factory, Singleton, and so on

Awesome Lists containing this project

README

          

# Common Design Patterns

### Creational patterns

- [Abstract Factory (p.87)*](./creational-patterns/AbstractFactory/AbstractFactory.ts)
- [Factory Method (p.107)](./creational-patterns/FactoryMethod/FactoryMethod.ts)
- [Prototype (p.117)](./creational-patterns/Prototype/Prototype.ts)
- [Singleton (p.127)](./creational-patterns/Singleton/Singleton.ts)

### Structural patterns

- [Bridge (p.151)](./structural-patterns/Bridge/Bridge.ts)
- [Adapter (p.139)](./structural-patterns/Adapter/Adapter.ts)
- [Composite (p.163)](./structural-patterns/Composite/Composite.ts)
- [Decorator (p.175)](./structural-patterns/Decorator/Decorator.ts)
- [Proxy (p.207)](./structural-patterns/Proxy/Proxy.ts)

### Behavioral patterns

- [Command (p.233)](./behavioral-patterns/Command/Command.ts)
- [Iterator (p.257)](./behavioral-patterns/Iterator/Iterator.ts)
- [Observer (p.293)](./behavioral-patterns/Observer/Observer.ts)
- [State (p.305)](./behavioral-patterns/State/State.ts)
- [Strategy (p.315)](./behavioral-patterns/Strategy/Strategy.ts)
- [Template Method (p.325)](./behavioral-patterns/TemplateMethod/TemplateMethod.ts)

\* Pages here are references to the book "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Annotations within the files are excerpts from the book.

---

Understanding UML:
- [UML Class Diagrams: Reference](https://learn.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2015/modeling/uml-class-diagrams-reference)
- [Introduction to UML and Design Patterns](https://www.ida.liu.se/~chrke55/courses/SWE/intro-uml-designpatterns)

See also:
- [Common Data Structures](https://github.com/stuymedova/common-data-structures)
- [Common Sorting and Searching Algorithms](https://github.com/stuymedova/common-sorting-and-searching-algorithms)