Design Pattern Fundamentos da Engenharia de Software – Leonardo de França Rosa – Rodrigo de Carvalho Rocha Introdução O que é um Design Pattern? Descrição de Design Pattern Solução de Problemas de Design Como escolher o Pattern correto Como Usar Os erros mais frequentes O que é Design Pattern? É uma solução genérica para uma classe de problemas Seu uso deve contribuir para reutilização e modularização em processos de desenvolvimento de software OO Possui descrição estruturada e catalogada, de maneira a oferecer clareza a seus usuários Descrição de Patterns Deve ser aderente à meta de reutilização Na criação de catálogos, as descrições devem seguir uma estrutura Cada autor define sua estrutura de descrição, mas fundamentalmente, devem ser apresentados exemplos práticos Solução de Problemas de Design – Quais os Principais desafios? Achar objetos que não vêm da análise Determinar a granularidade dos objetos Especificar Interfaces de objetos Especificar Implementações Usar mecanismos de reutilização Criar Design flexível Como escolher o Pattern certo – Abordagens sugeridas: Saber quais problemas de Design a serem enfrentados Achar um Pattern cujo propósito se encaixe ao problema Estudar Patterns similares. Comparar escolhas Como escoher o Pattern certo (Cont.) Examinar possíveis causas de Redesign Considerar o que poderia variar no seu Design Como usar – Método passo-a-passo: Leia o Pattern Entenda as classes e objetos envolvidos Estude a seção de exemplos Escolha nomes significativos (na sua aplicação) para os participantes do Pattern Como usar (Cont.) Defina as classes oriundas da escolha do Pattern Defina (na sua aplicação) nomes significativos para as operações oriundas da escolha do Pattern Implemente as operações coerentemente Os erros mais frequentes 1-”Um Pattern é uma solução para um problema de contexto” 2-”Pattern são somente jargões, regras, truques, estruturas de dados ...” 3-”Viu um , viu todos” Catálogo de Patterns – Patterns Home Page: hillside.net/patterns/patterns.html