Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/joseteodoro/puces-2021-jul-design-patterns


https://github.com/joseteodoro/puces-2021-jul-design-patterns

Last synced: 3 days ago
JSON representation

Awesome Lists containing this project

README

        

[José Teodoro da Silva](https://www.linkedin.com/in/jteodorosilva/)

# Design patterns e Frameworks

## Context

First of all, what is a pattern? Recurrent solutions for recurrent problems

### Object oriented programming

- building blocks for OOP: Abstraction, Polymorphism, Encapsulation and Inheritance

- bad results: Coupled classes, god classes, huge inheritance chains, tangled code, hyper fine grained O.O.P.

Some concurrency review to avoid patterns caveats:

[Concurrency Review](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/concurrency.md)

Let's start taking a look on good practices that reinforces the patterns:

[Good Design Practices](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/good-practices.md)

Now, let's take a look on patterns by usage (from commonly-used to less commonly-used):

[Design Patterns by usage](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/design-patterns-by-usage.md)

### Patterns by categories

[Creational Design Patterns](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/creational.md)

[Behavioral Design Patterns](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/behavioral.md)

[Structural Design Patterns](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/structural.md)

A pattern to help with progressive rollouts with no downtime:

[Feature Flag / Toggle](https://github.com/joseteodoro/PUCES-2021-FEB-DESIGN-PATTERNS/blob/main/ff.md)

## References

[refactoring.guru](https://refactoring.guru/)

[Source Making](https://sourcemaking.com/design_patterns/)

[Improving the Design of Existing Code by Martin Fowler](https://martinfowler.com/books/refactoring.html)

[GoF - Design patterns](https://www.amazon.com.br/Padr%C3%B5es-Projetos-Solu%C3%A7%C3%B5es-Reutiliz%C3%A1veis-Orientados/dp/8573076100)

[Clean Code](https://www.amazon.com.br/dp/B001GSTOAM)