Nessa aula, aprenderemos sobre o que são os padrões de projeto, e porque deveriamos utilizá-los em nossos programas.
Ao final da aula, conheceremos os tipos de padrão de projeto e como são organizados.
Durante nosso trabalho envolvendo programação, muitas vezes nos deparamos com problemas comuns, os quais nós, ou outros, já encontraram uma solução satisfatória e reutilizável.
Conhecer esses problemas é importante, pois aprendemos a identificar suas variações e a aplicar as soluções conhecidas mais rapidamente e eficientemente.
Por exemplo, há casos em que a informação necessária para criação de certos objetos no programa é externa aos objetos, e é obtida da combinação dos estado de vários outros objetos. Isso pode ser resolvido com um padrão de projeto.
Padrões de projeto (Design Patterns) descrevem problemas recorrentes no projeto de sistemas e suas soluções em termos de interfaces e objetos.
Os padrões de projeto são descritos através de:
Os padrões de projeto são descritos através de:
Os padrões de projeto são descritos através de:
Os padrões de projeto vem sendo catalogados oficialmente desde o lançamento do livro
"Design Patterns: Elements of Reusable Object-Oriented Software" (Erich Gamma, Richard Helm,
Ralph Johnson, e John Vlissides -- Addison-Wesley, 1995).
Os autores desse livro são conhecidos como "the gang of four" (GoF), e trabalharam na organização dos padrões para promover uma linguagem comum aos desenvolvedores, em projetos de software.
Os padrões descritos nesse livro e suas derivações são conhecidos como padrões GoF.
Os padrões de projeto podem ser classificados com relação ao seu propósito em:
Abaixo estão alguns exemplos de padrões GoF. Clique em cada um para ver sua descrição:
Ganhamos agora uma noção acerca dos princípios e da necessidade dos padrões de projeto.
Nas próximas aulas falaremos um pouco sobre padrões específicos e como podemos nos beneficiar de seu uso.
Recomendo a leitura do material do Refactoring Guru, sobre esse assunto.
Perguntas:
Até a próxima aula!