mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-14 14:58:39 +00:00
67a5aaa14c
* Corrected the incorrect YAML fontmatter. * Updated the H2 version. * updated the YAML format. * updated the YAML format. * updated the YAML format accroding to the changes requested. Co-authored-by: Ilkka Seppälä <iluwatar@users.noreply.github.com>
67 lines
4.1 KiB
Markdown
67 lines
4.1 KiB
Markdown
<!-- the line below needs to be an empty line C: (its because kramdown isnt
|
|
that smart and dearly wants an empty line before a heading to be able to
|
|
display it as such, e.g. website) -->
|
|
|
|
# Padrões de projeto implementados em Java
|
|
|
|

|
|
[](https://raw.githubusercontent.com/iluwatar/java-design-patterns/master/LICENSE.md)
|
|
[](https://sonarcloud.io/dashboard?id=iluwatar_java-design-patterns)
|
|
[](https://sonarcloud.io/dashboard?id=iluwatar_java-design-patterns)
|
|
[](https://gitter.im/iluwatar/java-design-patterns?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
[](#contributors-)
|
|
|
|
<br/>
|
|
|
|
Leia em outro idioma: [**zh**](/localization/zh/README.md), [**ko**](/localization/ko/README.md), [**fr**](/localization/fr/README.md), [**tr**](/localization/tr/README.md), [**ar**](/localization/ar/README.md), [**es**](/localization/es/README.md)
|
|
|
|
<br/>
|
|
|
|
# Introdução
|
|
|
|
Os padrões de projeto são um conjunto das melhores práticas e soluções formalizadas que um programador pode usar para resolver problemas comuns ao projetar um aplicativo ou sistema.
|
|
|
|
Os padrões de projeto podem acelerar o processo de desenvolvimento, fornecendo testes e comprovados paradigmas de desenvolvimento.
|
|
|
|
Reutilizar padrões de projeto ajuda a evitar problemas sutis que causam
|
|
problemas, e também melhora a legibilidade do código para desenvolvedores e arquitetos que
|
|
estão familiarizados com os padrões.
|
|
|
|
# Começando
|
|
|
|
Este site apresenta padrões de projeto Java. As soluções foram desenvolvidas por
|
|
programadores e arquitetos experientes da comunidade de código aberto. Os
|
|
padrões podem ser acessados por meio de suas descrições de alto nível ou por meio de seu
|
|
Código fonte. Os exemplos de código-fonte são bem comentados e podem ser considerados como
|
|
tutoriais de programação sobre como implementar um padrão específico. Nós usamos as mais
|
|
populares tecnologias Java de código aberto comprovadas em batalhas.
|
|
|
|
Antes de mergulhar no material, você deve estar familiarizado com vários
|
|
[Princípios de design de software](https://java-design-patterns.com/principles/).
|
|
|
|
Todos os projetos devem ser o mais simples possível. Você deve começar com KISS, YAGNI,
|
|
e fazer a coisa mais simples que poderia funcionar com os princípios. Complexidade e
|
|
os padrões só devem ser introduzidos quando são necessários para fins práticos e
|
|
extensibilidade.
|
|
|
|
Assim que estiver familiarizado com esses conceitos, você pode começar a se aprofundar nos
|
|
[padrões de projeto disponíveis](https://java-design-patterns.com/patterns/) por qualquer
|
|
das seguintes abordagens
|
|
|
|
- Pesquise um padrão específico por nome. Não consegue encontrar um? Informe um novo padrão [aqui](https://github.com/iluwatar/java-design-patterns/issues).
|
|
- Usando tags como `Performance`,` Gang of Four` ou `Acesso de dados`.
|
|
- Usando categorias de padrões, `Criacional`,` Comportamental` e outros.
|
|
|
|
Esperamos que você encontre as soluções orientadas a objetos apresentadas neste site úteis
|
|
em suas arquiteturas e divirta-se as aprendendo tanto quanto nos divertimos ao desenvolvê-las.
|
|
|
|
# Como contribuir
|
|
|
|
Se você estiver disposto a contribuir para o projeto, você encontrará as informações mais relevantes em nossa [wiki do desenvolvedor](https://github.com/iluwatar/java-design-patterns/wiki). Ajudaremos você e responderemos as suas perguntas na [sala de bate-papo do Gitter](https://gitter.im/iluwatar/java-design-patterns).
|
|
|
|
# Licença
|
|
|
|
Este projeto está licenciado sob os termos da licença MIT.
|
|
|