Padrões de Software. Objetivos Gerais. O que são Padrões
|
|
- Vítor Bugalho Barata
- 6 Há anos
- Visualizações:
Transcrição
1 Padrões de Software Rossana M. C. Andrade Departamento de Computação Universidade Federal do Ceará Objetivos Gerais Oferecer uma visão geral sobre os conceitos de padrões de software Explicar a terminologia Apresentar exemplos de padrões de software Apresentar exemplos de classificação de padrões e de reuso de padrões Não pretende exaurir o assunto Copyright Rossana M. C. Andrade Slide 1 Copyright Rossana Andrade Slide 2 Conteúdo O que são Padrões Diferentes Definições Um pouco da história Escrevendo Padrões Componentes de um Padrão Um Exemplo Padrões como uma Peça ou Estória Diferentes Formatos GoF Alexander Coplien O que são Padrões O que é? Nova categoria de conhecimento Conhecimento não é novo, mas falar sobre ele é Objetivo: conhecer o que você já conhece Como? Partindo de problemas e soluções recorrentes em diferentes áreas do conhecimento Copyright Rossana Andrade Slide 3 Copyright Rossana Andrade Slide 4
2 O que é um Padrão (Cont.) Aplicação Arquitetura Ciência da Computação Engenharia de software Engenharia Mecânica Telecomunicações... Copyright Rossana Andrade Slide 5 O que é um Padrão (Cont.) Por que padrões de software? engenheiros de software não iniciam o seu projeto do nada ao contrário, nós reutilizamos idéias que já vimos antes as mesmas técnicas são utilizadas repetitivamente a indústria de software necessita documentar o que nós fazemos Copyright Rossana Andrade Slide 6 Diferentes Definições Um padrão é uma entidade que descreve um problema que ocorre repetidamente em um ambiente e então descreve a essência da solução para este problema, de tal forma que você use esta solução milhões de vezes, sem nunca utilizá-la do mesmo modo, Christopher Alexander Diferentes Definições (Cont.) Um padrão é um pedaço de literatura que descreve um problema de projeto e uma solução geral para o problema num contexto particular, James Coplien Copyright Rossana Andrade Slide 7 Copyright Rossana Andrade Slide 8
3 Diferentes Definições (Cont.) Um padrão é uma solução provada para um problema em um contexto, Comunidade de Software Um Pouco da História Object-Oriented (OO) Metade do anos 80 Padrões de software emergiram de objetos Ward Cunningham and Kent Beck 1987: linguagem de padrões para interface de usuário James Coplien 1988: idioms Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides : Padrões de projeto (Design Patterns) Copyright Rossana Andrade Slide 9 Copyright Rossana Andrade Slide 10 Um Pouco da História Peter Coad Desde 1991 explora padrões The Hillside Group 1993: tentativa de montar as primeiras bases para padrões de software Idéias de Alexander integradas aos padrões de projeto da GoF 1994: The first Pattern Languages of Programming (PLoP) conference OOPSLA 94: livro da GoF é lançado Padrões de projeto: foco em OO Copyright Rossana Andrade Slide 11 Escrevendo Padrões Escritos na forma literária Não apenas documentação Diferentes formatos GoF, Alexandrian, Coplien, Cockburn, Portland Componentes essenciais nome, contexto, problema, solução e usos conhecidos Outros componentes importantes forças, contexto resultante, padrões relacionados, autor e data Copyright Rossana Andrade Slide 12
4 Componentes Essenciais de um Padrão Nome Uma palavra ou uma frase curta É a primeira coisa que o projetista encontra quando procura uma solução Nomes de padrões devem se tornar parte do vocabulário do domínio Iniciantes procuram nomes que descrevem o problema ou sua solução Os nomes do padrões da GoF são analogias Bridge, facade, mediator, entre outros Componentes Essenciais de um Padrão (Cont.) Contexto Quando considerar o padrão Ajuda a ter uma visão abrangente de onde o problema surge expressando o seu início, a sua essência e o seu corpo É difícil escrever um bom contexto Inclui um histórico dos padrões que têm sido aplicados antes aplicável às linguagens de padrões) Copyright Rossana Andrade Slide 13 Copyright Rossana Andrade Slide 14 Componentes Essenciais de um Padrão (Cont.) Problema Quando utilizar o padrão Problema a ser resolvido descrito claramente Expresso por uma simples pergunta ou por uma formulação resumida do problema Geralmente a primeira coisa que um procuradorpor-solução observa Um entendimento do problema vem da análise das forças Componentes Essenciais de um Padrão (Cont.) Solução O que fazer para resolver o problema Deve descrever claramente o que é necessário para resolver o problema Três tipos Uma solução que pode ser usada para todas as ocorrências do problema Uma solução que pode ser melhorada E uma solução que vai ser refinada nos níveis de projeto e implementação de diferentes formas Copyright Rossana Andrade Slide 15 Copyright Rossana Andrade Slide 16
5 Componentes Essenciais de um Padrão (Cont.) Usos Conhecidos Exemplos de aplicações do padrão em sistemas reais Pelo menos 3 usos conhecidos Regra de 3 Outros Componentes Importantes de um Padrão Forças O padrão é um balanço de forças/conseqüências Considerações positivas ou negativas a serem avaliadas a fim de mostrar que a solução apresentada é a melhor mostrar por que a solução mais óbvia é errada mostrar porque o problema é difícil de se resolver Copyright Rossana Andrade Slide 17 Copyright Rossana Andrade Slide 18 Outros Componentes Importantes de um Padrão (Cont.) Contexto Resultante É a conclusão do padrão O estado ou a configuração do sistema depois da aplicação do padrão, incluindo as consequências (boas e ruins) O contexto resultante de um padrão é a entrada para os padrões seguintes Aplicável para linguagens de padrões Outros Componentes Importantes de um Padrão (Cont.) Padrões Relacionados Como o padrão está relacionado com outros padrões que se referem ao mesmo problema Com que outros padrões este pode ser usado Copyright Rossana Andrade Slide 19 Copyright Rossana Andrade Slide 20
6 Um exemplo Hands in View Contexto Para explorar uma montanha inteira, um esquiador deve estar confortável e adaptável a qualquer terreno e a uma rápida mudança de terreno Para aproveitar melhor este padrão, o esquiador deve estar esquiando em um nível onde curvas em paralelo possam ser ligadas consistentemente Copyright Rossana Andrade Slide 21 Hands in View (Cont.) Problema O esquiador falha ao tentar a descida na montanha em declínios profundos e irregulares, resultando em escorregões, quedas de costas e yard sales Forças Medo de cair é a resposta mais básica de todas Confiança no equipamento é essencial Movimento contínuo é essencial Fatiga pode ser um fator em descidas longas Descida de compromisso com os esquis é essencial para que os esquis funcionem como projetados Copyright Rossana Andrade Slide 22 Hands in View (Cont.) Solução Concentre-se em manter as mãos no campo de visão Traga-as para dentro do seu campo de visão imediatamente depois de cada bastão tocar o chão e de cada curva Contexto resultante Ao colocar as mãos à vista, o alinhamento do corpo muda do estado de ficar timidamente para trás e permite que as extremidades do esqui deslizem debaixo do esquiador Portanto, o ato de colocar as mãos à vista puxa o corpo para a frente e, conseqüentemente, para baixo da montanha, trazendo o peso do esquiador sobre o esqui montanha abaixo e forçando a extremidade a morder e girar Copyright Rossana Andrade Slide 23 Hands in View (Cont.) Motivação A tendência natural de todo ser humano normal é manter a coluna reta ou em caso de queda eminente, inclinar-se para trás Isto provoca quedas e curvas indesejadas quando esquiando As conseqüências podem ser claramente entendidas, mas o medo previne que você se incline para frente. Entretanto, deixando as suas mãos no campo de visão, os esquis devem deslizar mais facilmente sem que você tenha que confrontar o medo diretamente Autor Don Olson 95/07/07 Origem Instrutor de esqui anônimo em algum lugar de Utah. Copyright Rossana Andrade Slide 24
7 Padrões como uma peça ou estória Analogia de Robert Hanmer Contexto: o cenário Problema: o tema Forças: desenvolvendo o conflito Solução: catarse, a moral da peça Contexto Resultante: eles viveram felizes para sempre ou deixando espaço para a seqüência Motivação: a discussão no bar ou no café depois da peça Formato da Gang of Four - GoF Nome do Padrão e Classificação Analogias Padrões de criação, de estrutura e de comportamento Intenção Breve descrição do problema e da solução Também Conhecido Como Motivação Exemplo de protótipo Aplicabilidade Problema, forças e contexto Copyright Rossana Andrade Slide 25 Copyright Rossana Andrade Slide 26 Formato da Gang of Four GoF (Cont.) Estrutura Participantes Solução Colaborações Conseqüências forças Implementação Solução Código Exemplo Usos Conhecidos Padrões relacionados Formato Alexandrian As seções não são fortemente delimitadas Podemos identificar determinados componentes em todos os padrões Uma figura no início Um parágrafo introdutório contexto Copyright Rossana Andrade Slide 27 Copyright Rossana Andrade Slide 28
8 Formato Alexandrian (Cont.) 3 diamantes no início e no fim da explicação do problema e da solução a palavra therefore:, imediatamente depois a solução Uma sentença clara do problema, uma discussão de forças, a solução e a motivação Um diagrama mostrando a solução No final, um parágrafo relacionando o padrão dentro da linguagem Copyright Rossana Andrade Slide 29 Formato do Coplien Nome Contexto Problema Forças Solução Sketch Desenhos ou Diagramas Contexto Resultante Rationale Mostra por que o padrão é útil Mostra a importância dos princípios atrás dos padrões Copyright Rossana Andrade Slide 30 Características de um bom padrão Deve ser uma solução para um problema em um contexto Você deve ser capaz de dizer ao solucionador do problema o que fazer e como resolver o problema Deve ser maduro, uma solução provada (regra de três) A solução deve ser construída dentro da ótica do solucionador do problema e pode ser implementada milhões de vezes sem se repetir Deve ser capaz de se reproduzir (padrões que constroem) Copyright Rossana Andrade Slide 31 Um Exemplo de um bom Padrão Nome: Half-Object + Protocol (HOPP) Problema: Às vezes um objeto deve aparecer em mais de um espaço de endereçamento. Como nós podemos fazer a diferença entre um espaço e múltiplos espaços de endereçamento de forma transparente? Forças: Complexidade, Distribuição, Disponibilidade de Informação, Custo e Performance Copyright Rossana Andrade Slide 32
9 Um Exemplo de um bom Padrão (Cont.) Solução Divida o objeto em dois objetos-metade, um em cada espaço de endereçamento, com um protocolo entre eles Em cada espaço de endereçamento, implemente a funcionalidade para interagir eficientemente com os outros objetos naquele espaço de endereçamento (isto pode resultar em funcionalidade duplicada, ou seja, funções implementadas em ambos espaços de endereçamento) Copyright Rossana Andrade Slide 33 Um Exemplo de um bom Padrão (Cont.) Solução (Cont.) Defina o protocolo entre os dois objetosmetade de tal forma que ele coordene as atividades dos dois objetos-metade e carregue a informação essencial que necessita ser passada entre os espaços de endereçamento Copyright Rossana Andrade Slide 34 Um Exemplo de um bom Padrão (Cont.) Sketch Um Exemplo de um bom Padrão (Cont.) Sketch Diagrama UML para uma aplicação de FTP Copyright Rossana Andrade Slide 35 Diagrama FTP com a aplicação do HOPP Copyright Rossana Andrade Slide 36
10 Um Exemplo de um bom Padrão (Cont.) Usos Conhecidos Sistemas de Telefonia: half-call IBM s VisualAge Ultra Light Client Padrões Relacionados padrões para o projeto de protocolos Message as Object, Message Parameter as Object Mecanismos para tratar a criação e recepção da mensagem Information collection e Formatting Parsing e Handling O que não é um padrão: Exemplo Contexto Um grande sistema OO em um computador com memória virtual Problema Como você aloca objetos na memória? Solução Execute alguns problemas típicos e descubra quais objetos comunicam-se freqüentemente em um determinado tempo local e coloque-os na mesma página Copyright Rossana Andrade Slide 37 Copyright Rossana Andrade Slide 38 O que não é um Padrão: Dicas Um regra simples Uma receita Um algoritmo Uma estrutura de dados Uma solução isolada para um problema em um contexto Próximos Slides Padrões trabalhando em Conjunto O que são Linguagens de Padrões Exemplos de Linguagens de Padrões Linguagem de Padrões by C. Alexander Guia para a escrita de padrões Exemplo delinguagem de Padrões Linguagem de Padrões para Escrita de Padrões por Gerard Meszaros e Jim Doble Copyright Rossana Andrade Slide 39 Copyright Rossana Andrade Slide 40
11 Padrões Trabalhando em Conjunto Padrões freqüentemente compartilham o mesmo contexto Problemas produzidos por um padrão são algumas vezes resolvidos por outros Um projeto complexo consiste de muitos padrões Catálogo de padrões Linguagens de Padrões O que são Linguagens de Padrões Uma coleção de padrões que trabalham juntos para resolver problemas num domínio específico, Linda Rising Uma linguagem de padrões é uma coleção de padrões que ampliam-se para gerar um sistema Copyright Rossana Andrade Slide 41 Copyright Rossana Andrade Slide 42 O que são Linguagens de Padrões? (Cont.) Cada padrão é uma seqüência dentro da linguagem de padrões O formato dos padrões formam um grafo Cada padrão produz um contexto para aqueles que o seguem Cada padrão deve construir sobre o contexto daqueles que vêm antes dele Existem muitos caminhos válidos dentro de uma linguagem de padrões Um Exemplo de uma Linguagem de Padrões By C. Alexander Garden growing wild Tree Places Fruit Tree Half-Hidden Garden Terraced Slope Building Edge Courtyards which live Entrance Transition Private Terrace on the Street Copyright Rossana Andrade Slide 43 Copyright Rossana Andrade Slide 44
12 Meios de Publicação Padrões necessitam de um meio nãolinear Publicação Web é o meio preferido Pode virar uma publicação linear se for bem indexada e com referência cruzada Cultura WikiWiki ( Conferências PLoP EuroPLoP 2002 Copyright Rossana Andrade Slide 45 Copyright Rossana Andrade Próximos slides Mais exemplos de linguagens de Padrões Classificação dos Padrões de Software Workshop de Escritores Mais Exemplos de Linguagens de Padrões By DeBruler Generative Pattern Language for Distributed Processing Estratégias para decompor sistemas de software complexos através de nós de processamento Copyright Rossana Andrade Slide 47 Copyright Rossana Andrade Slide 48
13 Mais exemplos de Linguagens de Padrões (Cont.) Padrões Define The Data Structure Identify The Nouns Factor Out Common Attributes Normalize the Roles Identify Problem Domain Relationships Introduce Virtual Attributes Animate the Data Time Thread Analysis Determine The Actors Copyright Rossana Andrade Slide 49 Mais exemplos de Linguagens de Padrões (Cont.) By R. Andrade Outgoing Call Mobility Management Temporary Identification Paging Authentication Security Database Ciphering Location Registration Incoming Call Home and Visitor Databases Radio Resource Management Handoff Decision Inter-system Handoff Execution Releasing Resources Roaming Handoff Failure Actions Anchor Mobile Switching Center Copyright Rossana Andrade Slide 50 Classificação dos Padrões de Software Padrões de Requisitos Padrões de Análise Padrões de Projeto Meta-Patterns Padrões Arquiteturais Idiomas Outros tipos: padrões de processo, padrões de testes, anti-padrões Classificação dos Padrões de Software (Cont.) Padrões de Requisitos Padrões de Análise Padrões Arquiteturais Meta-Padrões Padrões de Projeto Idiomas Requisitos Análise Projeto Implementação Copyright Rossana Andrade Slide 51 Copyright Rossana Andrade Slide 52
14 Padrões de Requisitos Documentam as necessidades do usuário e o comportamento genérico do sistema em um alto nível de abstração Ações que os desenvolvedores de software podem tomar para melhorar os requisitos não-funcionais Mostram os relacionamentos entre o usuário ou o operador e o sistema Padrões de Requisitos (Cont.) Fault-tolerant telecommunication patterns Visa a manutenção dos sistemas de comutação Medidas apropriadas para serem tomadas no estágio de desenvolvimento de requisitos Padrões relacionados a confiabilidade (mensagens do sistema e falhas do sistema) Five minutes of no escalation messages Padrões relacionados aos fatores humanos Copyright Rossana Andrade Slide 53 Copyright Rossana Andrade Slide 54 Padrões de Análise Inicialmente apresentados como complementos aos padrões de projeto Um passo antes do projeto Modelo de análise que focaliza nas estruturas conceituais Padrões de análise do Martin Fowler Domínio de conhecimento de software de negócios Party, quantity, subtype state machines, entre outros Copyright Rossana Andrade Slide 55 Padrões de Análise (Cont.) Party Problema: pessoas e organizações têm responsabilidades semelhantes Solução: Crie um tipo party como um supertype de uma pessoa ou organização Copyright Rossana Andrade Slide 56
15 Padrões de Projeto Estrutura repetida de elementos de projeto Um esquema para o refinamento de subsistemas ou de componentes de sistemas ou as relações entre eles....resolvem um problema geral de projeto num contexto particular., GoF Padrões de projeto que incluem detalhes de código de baixo nível Aplicados a diferentes tipos de problemas Padrões Arquiteturais e Meta-Padrões podem ser considerados Padrões de Projeto. Copyright Rossana Andrade Slide 57 Idiomas Relacionados com a implementação de características de projeto específicas Padrão de baixo nível específico para uma linguagem de programação Idiomas em C++ C++ Programming Styles and Idioms, James Coplien, 1991 Copyright Rossana Andrade Slide 58 Idiomas (Cont.) Nome: Counted Body Contexto: A interface de uma classe é separada de sua implementação (respectivamente, classes handle e body) Problema: atribuição em C++ é definida recursivamente como membro-por-membro com cópia quando a recursão termina Solução: Um contador de referência é adicionado à classe body para facilitar o gerenciamento de memória Autor e data: James Coplien, 1994 Copyright Rossana Andrade Slide 59 Parte IV: Reuso de Padrões A Comunidade de Padrões Ética de Padrões Reuso Meios de Publicação Workshop de Escritores Referências Em resumo... (Conclusões) Copyright Rossana Andrade Slide 60
16 Reuso Conheça os padrões estão disponíveis Catálogo de padrões de 2000 Escolha aquele que satisfaz as suas necessidades Um padrão é difícil de entender se você não necessita dele Apenas tenha uma visão geral Utilize o vocabulário dos padrões em revisões e sessões de projeto Reuso (Cont.) GoF Bastante utilizado entre a comunidade de software Core J2EE Pattern Catalog Padrões Arquiteturais Frank Bushmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal (Gang of Five) Copyright Rossana Andrade Slide 61 Copyright Rossana Andrade Slide 62 Creational patterns Abstract factory Builder Factory method Prototype Singleton GoF Design Patterns Structural patterns Adapter Bridge Composite Decorator Facade Flyweight Proxy Behavioral Patterns Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Method Visitor Copyright Rossana Andrade Slide 63 Presentation Tier Core J2EE Pattern Catalog Intercepting Filter Front Controller View Helper Composite View Service to Worker Dispatcher View Business Tier Business Delegate Service Locator Session facade Transfer Object Transfer Object Assembler Value List Handler Composite Entity Integration Tier Data Access Object Service Activator Copyright Rossana Andrade Slide 64
17 Architectural Patterns From Mud to Structure Layers Pipes and Filters Blackboard Distributed Systems Broker Pipes and Filters Microkernel Interactive Systems Model-View- Controller Presentation- Abstraction- Control Adaptable Systems Reflection Microkernel Copyright Rossana Andrade Slide 65 Aplicando Padrões Empresas IBM, John Vlissides e Erich Gamma Design Patterns Lucent, Jim Coplien e Linda Rising Organizational Patterns Nortel, Greg Utas Sistemas de Telefonia Carleton University Teaching Patterns Copyright Rossana Andrade Slide 66 Mais sobre Reuso de Padrões SugarloafPLoP 2002 Airline Computer Reservation Systems Engenharia Reversa de Demeyer Uma ferramenta para Reuso: AGAP Análise do Reuso de Padrões Captura de Padrões Copyright Rossana Andrade Slide 67 Referências [1] Andrade, R.M.C, Capture, Reuse, and Validation of Requirements and Analysis Patterns for Mobile Systems, Ph.D. Thesis, University of Ottawa, Ottawa, [2] Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl- King, I., and Angel, S., A Pattern Language: Towns, Buildings, Construction, Oxford University Press, New York, NY, [3] Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M., Pattern-Oriented Software Architecture, John Wiley and Sons, New York, NY, [4] Coplien, J. O., Software Patterns, SIGS books and Multimedia, June [5] Fowler, M., Analysis Patterns: Reusable Object Models, Addison- Wesley, Reading, MA, Copyright Rossana Andrade Slide 68
18 Referências (Cont.) [6] Gamma E., Helm R., Johnson R., Vlissides J., Design Patterns: Element of Reusable Object-Oriented Software, [7] Pattern Languages of Program Design I, II, III & IV; Patterns from the PLoP Conference at Allerton Park in Illinois, US and EuroPLoP in Europe; Addison-Wesley, [8] Rising, Linda, Patterns: A Way to Reuse Expertise, IEEE Communications Magazine, Vol. 37, No. 4, April [9] Rising, Linda, The Pattern Almanac 2000, Software Pattern Series, Addison-Wesley, ISBN [10] Schmidt, D., Tutorial about Design Patterns, Available at [11] Yoder, Joseph, Tutorial Software Patterns, SugarloafPLoP 2002, Itaipava, Rio de Janeiro, RJ. Maiores Informações Página de Padrões do Grupo Hillside Apontadores para listas, livros, arquivos ftp, padrões online, conferências, entre outros Listas Gang-of-4-patterns-request@cs.uiuc.edu Patterns-request@cs.uiuc.edu Patterns-discussion-request@cs.uiuc.edu Repositório de Padrões Portland Copyright Rossana Andrade Slide 69 Copyright Rossana Andrade Slide 70 Em resumo... Arquitetos experientes não têm consciência que utilizam padrões Bons para compartilhar informação e capturar conhecimento Padrões funcionam como uma porta para troca de experiências Pode ajudar novos desenvolvedores a aprenderem com os mais experientes Vocabulário Comum Padrões dão uma competência arquitetural de organização Copyright Rossana Andrade Slide 71 Em resumo... (Cont.) Você deve escrever padrões para Aprender mais sobre padrões Compartilhar conhecimento Provavelmente você usa alguma coisa que não foi documentada ainda Tarefa difícil e nem todos tem tempo ou vontade Você deve reutilizar padrões Em busca de uma melhoria no desenvolvimento de software Copyright Rossana Andrade Slide 72
19 Por enquanto é só, Pessoal! Copyright Rossana Andrade Slide 73
Rossana Andrade Departamento de Computação Universidade Federal do Ceará. O que é? Como?
Rossana Andrade rossana@lia.ufc.br Departamento de Computação Universidade Federal do Ceará Oferecer uma visão geral sobre os conceitos de padrões de software Explicar a terminologia Apresentar exemplos
Leia maisPadrões contexto problema solução
Padrões Padrões são soluções para problemas específicos que ocorrem de forma recorrente em um determinado contexto que foram identificados a partir da experiência coletiva de desenvolvedores de software.
Leia maisAnálise e Projeto. Padrões de Análise, Arquitetura e Projeto
Análise e Projeto Padrões de Análise, Arquitetura e Projeto 33 Padrões de Arquitetura Padrões Nome do padrão Problema: quando aplicar o padrão? Descreve o problema e seu contexto. Solução: elementos que
Leia maisMas o que é mesmo Padrão de Projeto?
Mas o que é mesmo Padrão de Projeto? Um Padrão de Projeto descreve uma solução comprovada para um problema recorrente e conhecido no desenvolvimento de software orientado a objetos. Mas afinal, porque
Leia maisTópicos Avançados em Linguagem de Programação. Padrões de Software. Prof. Alexandre Vidal DEINF-UFMA. Ciência da Computação
Tópicos Avançados em Linguagem de Programação Prof. Alexandre Vidal DEINF-UFMA Ciência da Computação Patterns (padrões) Compõem uma disciplina da Engenharia de Software voltada para a resolução de problemas
Leia mais15/09/2014. Aula 01: Apresentação. Review to 1 st Exam. Aula 02: Técnicas de Reuso. Panorama de Reuso. Aula 03: POO e Padrões. Bibliografia da Aula 02
Software Reuse Lecture 13 Aula 01: Apresentação Review to 1 st Exam Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 15 September 2014 Bibliografia Método de avaliação Provas
Leia maisRoni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná
Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná Reuso Motivações para reutilização de software Aspecto econômico Produtividade Time to market Qualidade Utilização de artefatos (código,
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação Prof. Fabiano Dorça. Introdução. Padrões de projeto
Universidade Federal de Uberlândia Faculdade de Computação Prof. Fabiano Dorça Introdução Padrões de projeto Algumas definições... Um padrão de projeto (design pattern) é uma solução geral reutilizável
Leia maisAula 01: Apresentação. Revisão para Prova 1. Aula 02: Técnicas de Reuso. Panorama de Reuso. Aula 03: POO e Padrões. Bibliografia da Aula 02
Reutilização de Software Aula 13 Aula 01: Apresentação Revisão para Prova 1 Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 23 Setembro 2013 Bibliografia Método de avaliação
Leia maisArquitectura de Sistemas de Software
Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Arquitectura de Sistemas de Software, LEIC/MEI, 2003/2004 1 Arquitectar... Arquitectar uma pequena cabana
Leia maisPadrões de Projeto de Software Orientado a Objetos
Padrões de Projeto de Software Orientado a Objetos Ricardo Argenton Ramos [Baseado nos slides do professor Fabio Kon - USP] 1 Padrões de Projeto de Software OO Também conhecidos como Padrões de Desenho
Leia maisMódulo I Princípios e Padrões de Projeto de SW em Java
Módulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra edubezerra@gmail.com Ismael H F Santos ismael@tecgraf.puc-rio.br April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br
Leia maisPadrões de Projeto. Padrões de Projeto. Além dos 23 Padrões GoF. Os 23 Padrões de Projeto. Documentação de um Padrão. Classificação dos Padrões
DCC / ICEx / UFMG Padrões de Projeto Padrões de Projeto Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para
Leia maisPadrões de Projeto. Parte 1. Prof. Fellipe Aleixo
Padrões de Projeto Parte 1 Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Padrões de Projeto de Software OO Também conhecidos como Padrões de Projeto de Software OO ou simplesmente como Padrões A Inspiração
Leia mais" ##$#$!% # & #$#$ !!!!"!
" ##$#$!% # & #$#$ Abstract Factory, Builder, Singleton, Factory Method, Prototype, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responsability, Command, Interpreter, Iterator,
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Luiz Leão luizleao@gmail.com http://www.luizleao.com Introdução O que é? Como descrever? Principais Padrões de Projetos Unidade 2 Padrões GoF PADRÕES CRIAÇÃO Abstract Factory
Leia maisINF011 Padrões de Projeto Introdução
INF011 Padrões de Projeto 01 - Introdução Sandro Santos Andrade sandroandrade@ifba.edu.br Instituto Federal de Educação, Ciência e Tecnologia da Bahia Departamento de Tecnologia Eletro-Eletrônica Graduação
Leia maisAgenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software
Reuso de Software Aula 04 Agenda da Aula Arquitetura de Software e Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 14 Março 2012 Arquitetura de Software Padrões arquiteturais
Leia maisPadrões de Design Orientado a Objetos Design Patterns. Jorge H. C. Fernandes DI-UFPE, Junho de 1999
Padrões de Design Orientado a Objetos Design Patterns Jorge H. C. Fernandes DI-UFPE, Junho de 1999 Padrões de Design Bibliografia Design Patterns: Elements of Reusable Object- Oriented Software. Gamma,
Leia maisPadrões de Projeto. Conteúdo. Objetivos
Padrões de Projeto Conteúdo O que são Padrões de Projeto? Para que servem? Vantagens/Desvantagens, Pontos Fortes/Fracos Exemplos e Alternativas Objetivos Conhecer diferentes padrões; Entender sua utilidade;
Leia maisEngenharia de Software
Engenharia de Software Projeto e Implementação Padrões de Projeto Msc. Carlos Mar 04/2014 REVISÃO: ORIENTAÇÃO A OBJETOS Msc. Carlos Mar - Abr/2014 Conceitos Fundamentais Classe Objeto Atributos Métodos
Leia maisArquitectura de Sistemas de Software
Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Arquitectura de Sistemas de Software, LEIC/MEI, 2003/2004 1 Revisões Arquitectura de Sistemas de Software,
Leia maisDesenho e documentação de arquitectura de software e de aplicações empresariais
Desenho e documentação de arquitectura de software e de aplicações empresariais João Pascoal Faria Laboratório de Engenharia de Software 10 de Novembro de 2003 1 Definição de arquitectura de software Arquitectura
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Lista de Exercícios AV2-01 Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 Qual o objetivo dos padrões Comportamentais, segundo o catálogo GOF? Questão 1 Resposta
Leia maisProf.ª Esp. Talita Pagani
Especialização em Engenharia de Software Prof.ª Esp. Talita Pagani talita.cpb@gmail.com @talitapagani 21/02/2014 Design Patterns Aula 1 Prof.ª Esp. Talita Pagani 1 Informações gerais 1. Definição de Design
Leia maisBibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa
BibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa Dairton Bassi, Kelly Braghetto, Eduardo Colli, Fabio Kon, João Eduardo Ferreira Instituto de Matemática e Estatística Universidade
Leia maisProjeto de software Estrutura do software e arquitetura SWEBOK
Projeto de software Estrutura do software e arquitetura SWEBOK SWEBOK Design Patterns Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas da engenharia Design
Leia maisSISMO - Sistemas e Mobilidade Departamento de Informática / UFMA. Junho de 2008
Introdução SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Compõem uma disciplina da Engenharia de Software voltada para a resolução de problemas
Leia maisUma Proposta para a Integração de Modelos de Padrões de Software com Ferramentas de Apoio ao Desenvolvimento de Sistemas
Universidade Federal do Ceará Departamento de Computação Mestrado em Ciência da Computação Dissertação de Mestrado Uma Proposta para a Integração de Modelos de Padrões de Software com Ferramentas de Apoio
Leia maisPadrões de Software (Software Patterns)
Padrões de Software (Software Patterns) Cleidson de Souza - cdesouza@ufpa.br Departamento de Informática Universidade Federal do Pará Agenda! Definição! Histórico! Motivação! Exemplo Estratégia MVC! Forma
Leia maisAbstract Factory Builder Factory Method Prototype Singleton Adapter Bridge Composite Decorator Facade Flyweight Proxy
Abstract Factory Builder Factory Method Prototype Singleton Adapter Bridge Composite Decorator Facade Flyweight Proxy Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State
Leia maisDIVISÃO DE ASSUNTOS ACADÊMICOS Secretaria Geral de Cursos PROGRAMA DE DISCIPLINA
DIVISÃO DE ASSUNTOS ACADÊMICOS Secretaria Geral de Cursos PROGRAMA DE DISCIPLINA DEPARTAMENTO DE CIÊNCIAS EXATAS CÓDIGO: EXA836 DISCIPLINA: PADRÕES E FRAMEWORKS CARGA HORÁRIA: 60h EMENTA: Padrões e anti-padrões
Leia maisPadrões. Arquitetura de Software Thaís Batista
Padrões Endereçam uma classe de problemas recorrentes e apresenta uma solução para eles (podem ser considerados um par problema-solução) Permitem a construção de software com propriedades definidas Ajudam
Leia maisAgenda. Padrões de Projeto para Sistemas Web. Introdução. Padrões. Referências. Misael Santos e Rossana Andrade
Padrões de Projeto para Sistemas Web Misael Santos e Rossana Andrade misael@lia.ufc.br Universidade Federal do Ceará Jan/2003 1 Agenda Introdução Servlets Padrões Web Interceptor Web Handlers Web Compiler
Leia maisPadrões de Análise. Martin Fowler, Analysis Patterns: Reusable Object Models, Addison-Wesley, Osvaldo Kotaro Takai João Eduardo Ferreira
Padrões de Análise Martin Fowler, Analysis Patterns: Reusable Object Models, Addison-Wesley, 2000 última atualização: agosto 2005 Osvaldo Kotaro Takai João Eduardo Ferreira Capítulo 1 - Introdução Modelos
Leia maisArquitectura de Sistemas de Software
Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Arquitectura de Sistemas de Software, LEIC/MEI, 2003/2004 1 Arquitectar... Arquitectar uma pequena cabana
Leia maisTópicos da Aula. POO e Padrões de Projetos. Considere três classes... Reuso de Classes. Locadora de DVD. Sistema Acadêmico
Reuso de Software Aula 03 Tópicos da Aula POO e Padrões de Projetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 12 Março 2012 Programação orientada a objetos Reuso de
Leia maisCurso - Padrões de Projeto Módulo 1: Introdução
Curso - Padrões de Projeto Módulo 1: Introdução Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java: Graduação
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Introdução Paulo Gomide Departamento de Ciência da Computação Universidade de Itaúna Motivação Introdução Por que Padrões? Por que Padrões de Projeto? O que é um Padrão de
Leia maisTópico 8: Arquitetura, Padrões, Frameworks e MDA
PU-Rio Tópico 8: Arquitetura, Padrões, Frameworks e MDA Luiz Antônio M. Pereira lpereira@uninet.com.br PU-Rio Agenda Arquitetura de Software Padrões e Frameworks Introdução Padrões de projeto Frameworks
Leia maisDesign Patterns. Viviane Torres da Silva
Design Patterns Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2010.1/es1 Sumário Reuso de Software Introdução Benefícios e Desvantagens Visão do Reuso Padrões de Projeto
Leia maisPadrões de Software (Software Patterns)
Padrões de Software (Software Patterns) Cleidson de Souza - cdesouza@ufpa.br Departamento de Informática Universidade Federal do Pará Agenda! Definição! Histórico! Considerações! Forma de um Padrão! Exemplo!
Leia maisINF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 17 Padrões de Design Singleton Facade Factory Method Observer Strategy
Leia maisArquitectura de Sistemas de Software
Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Arquitectura de Sistemas de Software, LEIC/MEI, 2004/2005 1 Arquitectar... Arquitectar uma pequena cabana
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 11 Padrões GoF (Bridge e Decorator) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype Singleton
Leia maisPadrões de Projeto. Prof. Jefersson Alex dos Santos (jefersson@dcc.ufmg.br) http://www.dcc.ufmg.br/~jefersson
Padrões de Projeto Prof. Jefersson Alex dos Santos (jefersson@dcc.ufmg.br) http://www.dcc.ufmg.br/~jefersson Apresentação Conceitos Definição Ponto de vista prático História Padrões de Projeto Conhecidos
Leia maisLaboratório de Desenvolvimento de Software
Laboratório de Desenvolvimento de Software FEUP/MIEIC, 2010/11 Nuno Flores nuno.flores at fe.up.pt Rosaldo Rossetti rossetti at fe.up.pt Filipe Correia filipe.correia at fe.up.pt http://paginas.fe.up.pt/~nflores/dokuwiki/doku.php?id=teaching:1011:ldso
Leia maisEstilos Arquiteturais. Prof. Fellipe Aleixo
Estilos Arquiteturais Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Como Definir Arquiteturas? Dois tipos de elementos podem ser utilizados para a definição de uma arquitetura: Componentes à blocos
Leia maisUma Proposta de um Repositório de Padrões de Software Integrado ao RUP 1
Uma Proposta de um Repositório de Padrões de Software Integrado ao RUP 1 Fabiana Marinho *, Misael Santos, Rute Nogueira Pinto e Rossana Andrade * Instituto Atlântico, Rua Chico Lemos, 94, 660822-780,
Leia maisModulo I Princípios e Padrões de Projeto de SW em Java
Modulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra edubezerra@gmail.com Ismael H F Santos ismael@tecgraf.puc-rio.br April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br
Leia maisArquitectura de Sistemas de Software
Ou um prédio de 6 andares... Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Arquitectura de Sistemas de Software, LEIC/MEI, 2003/2004 1 Arquitectura de
Leia maisProgramação Orientada a Objetos. Padrões de Criação
Programação Orientada a Objetos Padrões de Criação Cristiano Lehrer, M.Sc. Objetivos Apresentar cada um dos 23 padrões clássicos descrevendo: O problema que solucionam. A solução. Diagramas UML (Unified
Leia maisTecnologias Atuais de. Desenvolvimento de Software
Tecnologias Atuais de Desenvolvimento de Software Arquitetura, Padrões, Frameworks e MDA Prof. Luiz Antônio lpereira@uninet.com.br Agenda Arquitetura de Software Patterns e Frameworks Introdução Padrões
Leia maisProgramação Orientada a Objetos. Padrões Estruturais
Programação Orientada a Objetos Padrões Estruturais Cristiano Lehrer, M.Sc. Classificação dos Padrões de Projeto Propósito o que o padrão faz: Padrões de criação: abstraem o processo de criação de objetos
Leia maisArquitetura de Software Introdução. Por quê? O que? Como? Onde? e Quem?
Arquitetura de Software Introdução Por quê? O que? Como? Onde? e Quem? Síntese Arquitetura de software é o caminho para: conectar as metas de negócios ao que iremos construir obter alinhamento organizar
Leia maisAs Visões. Visões arquiteturais (revisão)
As 4 + 1 Visões Jair C Leite Visões arquiteturais (revisão) Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da engenharia.
Leia maisOrganizando Processos de Requisitos
Organizando Processos de Requisitos Soeli T. Fiorini Julio Cesar Sampaio do Prado Leite Carlos José Pereira de Lucena soeli,julio,lucena@inf.puc-rio.br Pontifícia Universidade Católica do Rio de Janeiro
Leia maisArquitectura de Sistemas de Software Mestrado em Engenharia Informática Licenciatura em Engenharia Informática e Computação
Arquitectura de Sistemas de Software Mestrado em Engenharia Informática Licenciatura em Engenharia Informática e Computação Ademar Aguiar Universidade do Porto & INESC Porto ademar.aguiar at fe.up.pt FEUP
Leia maisMódulo III Padrões GOF
Módulo III Padrões GOF Professores Eduardo Bezerra edubezerra@gmail.com Ismael H F Santos ismael@tecgraf.puc-rio.br April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Ementa Introdução aos
Leia maisPrincípios de Engenharia de Software Resumo 8 Semana 8 Versão: 1.0 Data: 05/10/04
Alunos: Ariane Bueno 0114784-9 Elaine A. de Carvalho 0114633-1 Gabriel Ramos 0114838» O QUE APRENDI ASSUNTO: ARQUITETURA ASSUNTO: Notas de aula referentes às aulas de 30/09/04, Arquitetura de Software(Shaw),
Leia maisSoluções reutilizáveis para situações ou problemas encontrados comumente em desenvolvimento de software orientado a objetos.
Padrões de Projeto O que são? Soluções reutilizáveis para situações ou problemas encontrados comumente em desenvolvimento de software orientado a objetos. Livros Design Patterns: Elements of Reusable Object-
Leia maisTópicos Especiais em Informática Fatec Indaiatuba
Prof. Dr. Dilermando Piva Jr. Fatec Indaiatuba O que tem a ver isso com Programação? Imagine que uma pessoa tenha aprendido diversas técnicas de pintura. A partir desse conhecimento, ela saberá como pegar
Leia maisPadrões de Projeto de Software Orientado a Objetos
Padrões de Projeto de Software Orientado a Objetos Ricardo Argenton Ramos [Baseado nos slides do professor Fabio Kon - USP] 1 Padrões de Projeto de Software OO Também conhecidos como Padrões de Desenho
Leia maisJ930. Padrões. Projeto. Introdução. argonavis.com.br. Helder da Rocha (helder@acm.org)
Padrões de J930 Projeto Introdução Helder da Rocha (helder@acm.org) argonavis.com.br O que é um padrão? Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas
Leia mais1Introdução Helder da Rocha (helder@acm.org)
J930 Padrões Projeto de 1Introdução Helder da Rocha (helder@acm.org) argonavis.com.br O que é um padrão? Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas
Leia maisArquitetura de Software visão emergente
Arquitetura de Software visão emergente Objetivos Visão abstrata do software através de componentes e interfaces Independência de plataforma Independência de paradigma de programação Técnicas Estilos Arquiteturais
Leia mais31/05/ : Software Visualization. Review to 2 nd Exam. System as a City. Polymetric View. View Crosscutting Concerns.
Software Quality and Measurement Lecture 25 14: Software Visualization Review to 2 nd Exam Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo ese.dcc@gmail.com 1 June 2015 Evaluating the design with
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 10 Padrões GoF (Protoype e Façade) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype Singleton
Leia maisTestes com Design Patterns
Helder da Rocha (helder.darocha@gmail.com) 31 de março de 2005 71. Que padrão de design pode ser usado para permitir que uma implementação específica e uma hierarquia de abstrações possa variar independentemente?
Leia maisPROJETO DE ARQUITETURA
PROJETO DE ARQUITETURA Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Antes de mais nada... Próximas aulas: Seminários de Padrões de Projeto GoF 1º Dia: 10/11/2017, 08h 10h, Sala 04 2º Dia:
Leia maisPadrões GoF. Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Padrões GoF Leonardo Gresta Paulino Murta leomurta@ic.uff.br Agenda Introdução Padrões de Criação Padrões de Estrutura Padrões de comportamento Leonardo Murta Padrões GoF 2 Introdução Os padrões GoF (Gamma
Leia maisProf. Dr. Dilermando Piva Jr. Fatec Indaiatuba
Prof. Dr. Dilermando Piva Jr. Fatec Indaiatuba Imagine que uma pessoa tenha aprendido diversas técnicas de pintura. A partir desse conhecimento, ela saberá como pegar um pincel, como misturar as cores
Leia maisDesign Pattern Implementation in Java and AspectJ
Design Pattern Implementation in Java and AspectJ Jan Hannemann Gregor Kiczales In Proceedings of 2002 ACM SIGPLAN conference on OOPSLA. NY, USA. Introdução 2 Introdução 3 Introdução 4 Introdução 5 Introdução
Leia maisDefinindo um padrão para arquitetura Web
Definindo um padrão para arquitetura Web Padrões de Projeto Soluções reutilizáveis para situações ou problemas encontrados comumente em desenvolvimento de software orientado a objetos. Livros Design Patterns:
Leia maisProgramação Avançada. Padrões de Projeto de Software. Fonte: Oswaldo B. Peres e K19 Treinamentos
Programação Avançada Padrões de Projeto de Software 1 Fonte: Oswaldo B. Peres e K19 Treinamentos Introdução Projetar software OO reusável e de boa qualidade é uma tarefa difícil; Para realizar essa tarefa
Leia maisPadrões de Design. Jair C Leite
Padrões de Design Jair C Leite Padrões Padrões são soluções para problemas específicos que ocorrem de forma recorrente em um determinado contexto que foram identificados a partir da experiência coletiva
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Lista de Exercícios AV1 01 Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 Dentre as alternativas abaixo identifique a que NÃO define uma situação em que deve
Leia maisIntrodução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Leia maisAula 1: Apresentação. Revisão para Prova 1. Aula 2: Motivação. O que é software? Eng. de Software em Camadas. O que é Engenharia de Software?
Engenharia de Software Aula 15 Aula 1: Apresentação Revisão para Prova 1 Livro Datas Monitoria Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 22 Abril 2013 Avaliação Agenda do Curso
Leia maisArquitetura de Sistemas
Arquitetura de Sistemas Fabio Perez Marzullo IEEE Body of Knowledge on Services Computing Sponsored by Technical Committee on Services Computing, IEEE Computer Society Projeto Arquitetural Modelos mentais
Leia maisProgramação com Objectos 2º Teste Tipo 1º Semestre (120 minutos)
1/8 Programação com Objectos 2º Teste Tipo 1º Semestre (120 minutos) Nome: Primeira Parte (7 valores) PERGUNTA NOTA 1.1.1 1.1.2 1.1.3 1.2 1.3 1.4 Segunda Parte (3 valores) PERGUNTA RESPOSTA 2.1 2.2 2.3
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 09 Padrões GoF (Adapter e Composite) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype Singleton
Leia maisArquitectura de Sistemas de Software Mestrado em Engenharia Informática Licenciatura em Engenharia Informática e Computação
Arquitectura de Sistemas de Software Mestrado em Engenharia Informática Licenciatura em Engenharia Informática e Computação Ademar Aguiar Universidade do Porto & INESC Porto ademar.aguiar at fe.up.pt FEUP
Leia maisEngenharia de Software. Projeto de Arquitetura
Engenharia de Software Projeto de Arquitetura O que já vimos? Introdução a Engenharia de Software Processos de Software Desenvolvimento Ágil de Software Engenharia de Requisitos Modelagem de sistemas (outra
Leia maisb) Adapter, Bridge e Composite. c) Builder, Prototype e Singleton. d) Façade, Command e Decorator. e) Factory Method, Interpreter e Template Method.
1) Considere os diagramas de classes de análise fornecidos nos itens (a) e (b) abaixo, ambos de acordo com a notação da UML. Esses diagramas desejam representar o fato de que uma conta bancária pode estar
Leia maisUML Visão Geral UML Visão geral v.1.1, Novembro de 2001
UML Visão Geral 1 Índice Introdução Diagramas O que é a UML? Diagrama de casos de utilização Valor da UML Diagrama de classes Origens da UML Diagrama de objectos Parceiros da UML Diagrama de componentes
Leia maisNotas de Aula 03: Introdução a Orientação a Objetos e a UML
Notas de Aula 03: Introdução a Orientação a Objetos e a UML Objetivos da aula: Introduzir os conceitos da Orientação à Objetos (O.O) Introduzir os conceitos da UML Relacionar os processos às ferramentas
Leia maisDesign Patterns. Viviane Torres da Silva viviane.silva@ic.uff.br. http://www.ic.uff.br/~viviane.silva/2012.1/es1
Design Patterns Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2012.1/es1 Sumário Reuso de Software Introdução Benefícios e Desvantagens Visão do Reuso Padrões de Projeto
Leia maisMAC Tópicos de P.O.O.
MAC 5715 - Tópicos de P.O.O. Anti-Padrão de Desenvolvimento: Será um padrão? Diego Tarábola tarabola@gmail.com Denise Goya dhgoya@ime.usp.br Historinha-evidência Esta implementação de Singleton [2] faz
Leia maisPADRÕES DE PROJETO: DESIGN PATTERNS
PADRÕES DE PROJETO: DESIGN PATTERNS Jaime William Dias 1, Danilo Venturini 1, William Macxuel Muniz 1, Rodrigo Niehues Chagas 1 1 Universidade Paranaense (UNIPAR) Paranavaí PR Brasil danilo_tr98@hotmail.com,
Leia maisPATI-MVC: Padrões MVC para Sistemas de Informação. Gabriela T. De Souza Instituto Atlântico
PATI-MVC: Padrões MVC para Sistemas de Informação Gabriela T. De Souza gabi@atlantico.com.br Instituto Atlântico Carlo Giovano S. Pires cgiovano@atlantico.com.br Instituto Atlântico Márcio de Oliveira
Leia maisEnglish version at the end of this document
English version at the end of this document Ano Letivo 2016-17 Unidade Curricular PROGRAMAÇÃO ORIENTADA POR OBJETOS Cursos ENGENHARIA ELETRÓNICA E TELECOMUNICAÇÕES (Mestrado Integrado) ENGENHARIA INFORMÁTICA
Leia maisPadrões de Desenho (Design Patterns)
Padrões de Desenho (Design Patterns) O que são padrões de desenho Porque são úteis Conhecer alguns padrões 1 Padrões (Patterns) Design Patterns Explained: A New Perspective on Object-Oriented Design, Alan
Leia maisEngenharia de Requisitos
Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Engenharia de Software I 2013.2 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo
Leia mais