Padrões de Projeto

23
PADRÕES DE PROJETO Francisco Nauber Bernardo Gois MÉTODOS AVANÇADOS DE

Transcript of Padrões de Projeto

Page 1: Padrões de Projeto

PADRÕES DE PROJETO

Francisco Nauber Bernardo Gois

MÉTODOS AVANÇADOS DE

Page 2: Padrões de Projeto

AULA 1

A O FIM DESTA AULA VOCÊ SERÁ CAPAZ DE:

▸ Compreender o que são padrões de projeto.

▸ Aprender a origem dos padrões de projeto.

▸ Iniciar o entendimento de como são descritos e estruturados padrão de projeto na linguagem de padrões.

Page 3: Padrões de Projeto

PADRÕES

Page 4: Padrões de Projeto

PADRÕES DE PROJETO

SOLUÇÃO PADRÃO?

Page 5: Padrões de Projeto

PADRÕES DE PROJETO

ORIGEM⦿ Os padrões de projeto surgiram com ●Christopher Alexander nos anos 70. ●The Timeless Way of Building

(1979) ⦿ Descreve ●Soluções comuns de arquitetura ●Como essas soluções se unem

para formar um ambiente coesivo e habitável ●Padrões do urbanismo para

detalhes decorativos

Page 6: Padrões de Projeto

PADRÕES DE PROJETO

A PATTERN LANGUAGE

Page 7: Padrões de Projeto

PADRÕES DE PROJETO

O QUE É UM PADRÃO DE PROJETO?

▸ Patterns = Um definição simples é uma solução conhecida aplicada a um problema em um contexto determinado.

▸ É uma solução geral para um problema que ocorre com frequência dentro de um determinado contexto no projeto de software.

Page 8: Padrões de Projeto

REUSO DE IDEIAS

Page 9: Padrões de Projeto

PADRÕES DE PROJETO

PADRÕES DE PROJETO

▸ Facilitam o reuso de soluções de arquiteturas e projeto

▸ Não é reuso de código

▸ Reuso de soluções e estratégias

▸ As vezes, reuso de interface

Page 10: Padrões de Projeto

PADRÕES DE PROJETO

Page 11: Padrões de Projeto

PADRÕES DE PROJETO

DIVERSAS PUBLICAÇÕES DESDE ENTÃO

Page 12: Padrões de Projeto

PADRÕES DE PROJETO

O CONCEITO DE PADRÕES COMEÇA A SER UTILIZADO EM OUTRAS ÁREAS

Page 13: Padrões de Projeto

PADRÕES DE PROJETO

EVOLUÇÃO DO USO DE PADRÕES

Page 14: Padrões de Projeto

Gang of Four - O Livro

• O livro que iniciou o uso de padrões de projeto em engenharia de software

• Comunidade se refere aos autores como “Gang of Four”

Page 15: Padrões de Projeto

PADRÕES DE PROJETO

O QUE SÃO PADRÕES

Page 16: Padrões de Projeto

PADRÕES POSSUEM UMA LINGUAGEM

Page 17: Padrões de Projeto

PADRÕES DE PROJETO

COMPONENTES DE UM PADRÃO DE PROJETO - LINGUAGEM DE PADRÕES

▸ NOME O nome facilita a comunicação e referência ao padrão

Page 18: Padrões de Projeto

PADRÕES FACILITAM A COMUNICAÇÃO ENTRE ESPECIALISTASVamos criar objetos únicos para os quais há apenas uma instância, oferecendo um ponto de acesso global, assim como uma variável global, porém sem as desvantagens das variáveis globais.

PADRÕES DE PROJETO

Vamos usar o Singleton !!!

Page 19: Padrões de Projeto

PADRÕES DE PROJETO

USANDO PADRÕES DE PROJETO

Podemos receber notificações quando um evento acontece?

• Yes, we can! – Observer

• Podemos desfazer a ultima operação realizada?

• Yes, we can! – Memento and Command

• Podemos acessar os elementos de uma coleção de forma sequencial?

• Yes, we can! – Iterator

Page 20: Padrões de Projeto

PADRÕES DE PROJETO

▸ NOME

▸ Pattern alias – “also known as” (Apelido)

COMPONENTES DE UM PADRÃO DE PROJETO - LINGUAGEM DE PADRÕES

Page 21: Padrões de Projeto

PADRÕES DE PROJETO

PROXIMA AULA :

▸ A linguagem de padrões de projeto

Page 22: Padrões de Projeto

PADRÕES DE PROJETO

ONDE PUBLICAR NOVOS PADRÕES