GoConqr has a new look! Let us know what you think.

Flashcards

Motivação Desing Patterns

Primo Deckers Design patterns Portuguese 13 cards

Cards in this deck (13)

  1. 1A orientação a objetos, por si só, não garante sistemas reusáveis e extensíveis  Profissionais experientes conseguem projetar bons sistemas, novatos não  Primeiro aprende-se as regras ◦ Algoritmos, estruturas, linguagens  Depois os princípios ◦ Projeto estruturado, Projeto OOMotivação I
  2. 2Mas, sistemas complexos necessitam de projetos robustos, que foram postos à prova ◦ Estes Padrões de Projeto têm que ser compreendidos, lembrados e usados  Padrões de Projeto representam soluções comprovadas para problemas recorrentes em desenvolvimento de softwareMotivação II
  3. 3A ideia original surgiu em 1979, na Arquitetura e Engenharia Civil  Christopher Alexander, arquiteto, queria melhorar o processo de projeto de edifícios e áreas urbanas  Hoje, projetos de engenharia civil seguem padrões estabelecidos ◦ Arcos, colunas, portas, janelas, etc. – a solução para tudo isso já é bem conhecidaEvolução I
  4. 4Cada padrão descreve um problema que ocorre repetidas vezes em nosso ambiente, e então descreve o núcleo da solução para aquele problema, de tal maneira que pode-se usar essa solução milhões de vezes sem nunca fazê-la da mesma forma duas vezes” Christopher Alexander, sobre padrões na arquitetura e engenharia civilEvolução II
  5. 5Na Engenharia de Software, quatro autores (Gang of Four) se basearam em Christopher Alexander para criar Padrões de Projeto de software  Em 1994 descreveram 23 padrões em seu livro ◦ Hoje ele já está na sua trigésima sexta edição ◦ Mais de 500 mil cópias vendidas, traduzido para 13 línguasEvolução III
  6. 6“Descrição de uma solução para resolver um problema genérico de projeto em um contexto específico. [...] Um padrão de projeto dá nome, abstrai e identifica os aspectos-chave de uma estrutura de projeto comum para torná-la reutilizável” Erich Gamma, et. al, sobre padrões de projeto de softwarePadrões de Projeto
  7. 7Padrões capturam a estrutura estática e a colaboração dinâmica entre objetos parcitipantes no projeto de sistemas  São especialmente bons para descrever como e por que resolver problemas não funcionais  Facilitam o reuso de soluções arquiteturais que deram certo antes  Aumentam a coesão, diminuem o acoplamentoBeneficios
  8. 8Padrões de projeto são compostos por quatro elementos essenciais?◦ Nome do padrão
    ◦ Problema a ser resolvido
    ◦ Solução dada pelo padrão
    ◦ Consequências
  9. 9Um identificador utilizado para resumir ◦ O problema em questão ◦ Suas soluções ◦ Suas consequências  Aumenta o vocabulário e melhora a comunicação “A parte mais difícil de programação é dar bons nomes às variáveis”NOME
  10. 10Descreve quando aplicar o padrão  Explica o problema e seu contexto  Pode conter uma lista de pré condições que precisam estar presentes antes de levar em consideração a aplicação do padrãoPROBLEMA
  11. 11Descrição abstrata de como o padrão resolve o problema em questão  Descreve os elementos que compõem ◦ Relacionamentos ◦ Responsabilidades ◦ Colaborações  Inclui algum exemplo concreto de implementação ◦ Porém o padrão deve ser adaptado ao seu contexto específicoSOLUÇÃO
  12. 12Vantagens e desvantagens de aplicar o padrão  Esta seção serve para ◦ Avaliar várias alternativas de padrões ◦ Entender os custos e desafios ◦ Entender os benéficios de aplicar o padrão  Inclui análise de impacto envolvendo ◦ Flexibilidade ◦ Extensibilidade ◦ PortabilidadeCONSEQUÊNCIAS
  13. 13PADRÕES DE PROJETO NÃO SÃO? Soluções prontas, que podem ser
    codificadas diretamente nas classes e
    reutilizadas sem adaptação (como
    API’s, coleções de código, etc.)
     Projetos para contextos abrangentes e
    complexos (uma aplicação ou
    subsistema inteiro)
    ◦ São aplicáveis em situações específicas

Information

Description
Design patterns Flashcards on Motivação Desing Patterns, created by Primo Deckers on 14/11/2016.
Created by
Primo Deckers
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?