Rossana Andrade Departamento de Computação Universidade Federal do Ceará. O que é? Como?

Tamanho: px
Começar a partir da página:

Download "Rossana Andrade Departamento de Computação Universidade Federal do Ceará. O que é? Como?"

Transcrição

1 Rossana Andrade 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 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 Andrade Slide 1 Copyright Rossana Andrade Slide 2 Padrões de Software Diferentes Definições Um pouco da história Componentes Padrões como uma Peça ou Estória Diferentes Formatos GoF Coplien Exemplos Classificação Comunidade e Ética Reuso Copyright Rossana Andrade Slide 3 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 4

2 Aplicação Arquitetura Ciência da Computação Engenharia de software Engenharia Mecânica Telecomunicações... Copyright Rossana Andrade Slide 5 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!! " 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!!" 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 !!" Um padrão é uma solução provada para um problema em um contexto, Comunidade de Software #$ %&' ( 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 #$ %&' ( 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 $ ) 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 $ ) &%$ * Nome Uma palavra ou uma frase curta É a primeira coisa que o projetista9 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 $ ) &%$ * 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 $ ) &%$ * 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 $ ) &%$ * 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 $ ) &%$ * Usos Conhecidos Exemplos de aplicações do padrão em sistemas reais Pelo menos 3 usos conhecidos Regra de 3 %$ )+$ ) %$ * 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 %$ )+$ ) %$ * 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 %$ )+$ ) %$ * 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 &$ %$ )"%( 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,$,%-, 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 21 Copyright Rossana Andrade Slide 22,$,%, Estrutura Participantes Solução Colaborações Conseqüências forças Implementação Solução Código Exemplo Usos Conhecidos Padrões relacionados Copyright Rossana Andrade Slide 23, $ ). 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 24

7 #$ /$ ).%$ $ * 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 25 #$ /$ ).%$ $ * 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 26 #$ /$ ).%$ $ * 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 #$ /$ ).%$ $ * Sketch Diagrama UML para uma aplicação de FTP Copyright Rossana Andrade Slide 27 Copyright Rossana Andrade Slide 28

8 #$ /$ ).%$ $ * Sketch Diagrama FTP com a aplicação do HOPP Copyright Rossana Andrade Slide 29 #$ /$ ).%$ $ * 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 Copyright Rossana Andrade Slide 30 /$ ). Web Handlers Padrões de Interface Gráfica Linguagem Tropyc Padrões XML.&"* Padrões de Requisitos Padrões de Análise Padrões de Projeto Meta-Patterns Padrões Arquitetônicos Idiomas Copyright Rossana Andrade Slide 31 Copyright Rossana Andrade Slide 32

9 .&"* 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 0 1% 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 Copyright Rossana Andrade Slide 33 Copyright Rossana Andrade Slide 34 01% 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 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 36

10 2. 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 37 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 Arquitetônicos e Meta-Padrões podem ser considerados Padrões de Projeto. Copyright Rossana Andrade Slide 38 +$ 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, $ 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 39 Copyright Rossana Andrade Slide 40

11 $ % Uma hierarquia de workshops de escritores Grupos de leitura local Grupo Hillside Livros com os artigos da conferência Conferências PLoP ao redor do mundo 3&4.. EuroPLoP 2002 Copyright Rossana Andrade Slide 41 Copyright Rossana Andrade 5 & Regra de Buschmann: nunca capture suas próprias idéias em um padrão Não pense que padrões resolvem tudo Tente sempre encorajar as pessoas a repassar os conhecimentos Sempre reconheça aqueles que criaram as técnicas ou que primeiro se empenharam a escrever sobre elas Não fique tão excitado! Padrões são apenas mais uma técnica para ajudá-lo no desenvolvimento de software Copyright Rossana Andrade Slide 43 0% 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 Copyright Rossana Andrade Slide 44

12 0% 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 45 Creational patterns Abstract factory Builder Factory method Prototype Singleton,! 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 &&%. Presentation Tier 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 47 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 48

13 ).& 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 % 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 $ " Página de Padrões do Grupo Hillside Apontadores para listas, livros, arquivos ftp, padrões on-line, 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 GREaT Patterns padroes.lia.ufc.br Copyright Rossana Andrade Slide 51 $ %$ 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 Copyright Rossana Andrade Slide 52

14 $ %$ Vocabulário Comum Padrões dão uma competência arquitetural de organização Você deve reutilizar padrões Em busca de uma melhoria no desenvolvimento de software Copyright Rossana Andrade Slide & [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 54 03& 1%9(:.; [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. Copyright Rossana Andrade Slide 55 Copyright Rossana Andrade Slide 56

Padrões de Software. Objetivos Gerais. O que são Padrões

Padrões de Software. Objetivos Gerais. O que são Padrões Padrões de Software Rossana M. C. Andrade rossana@lia.ufc.br Departamento de Computação Universidade Federal do Ceará Objetivos Gerais Oferecer uma visão geral sobre os conceitos de padrões de software

Leia mais

Análise e Projeto. Padrões de Análise, Arquitetura e Projeto

Aná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 mais

Padrões contexto problema solução

Padrõ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 mais

Mas o que é mesmo Padrão de Projeto?

Mas 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 mais

Tó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. 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 mais

Universidade 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 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 mais

15/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

15/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 mais

Aula 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

Aula 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 mais

Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná

Roni 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 mais

Arquitectura de Sistemas de Software

Arquitectura 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 mais

INF011 Padrões de Projeto Introdução

INF011 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 mais

Padrões de Projeto. Parte 1. Prof. Fellipe Aleixo

Padrõ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

Padrões de Projeto de Software

Padrõ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 mais

Padrões de Projeto de Software Orientado a Objetos

Padrõ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 mais

" ##$#$!% # & #$#$ !!!!"!

 ##$#$!% # & #$#$ !!!!! " ##$#$!% # & #$#$ Abstract Factory, Builder, Singleton, Factory Method, Prototype, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responsability, Command, Interpreter, Iterator,

Leia mais

Mó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 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 mais

Padrões de Projeto de Software

Padrõ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 mais

Arquitectura de Sistemas de Software

Arquitectura 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 mais

Desenho 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 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 mais

Padrõ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

Padrõ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 mais

Prof.ª Esp. Talita Pagani

Prof.ª 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 mais

SISMO - Sistemas e Mobilidade Departamento de Informática / UFMA. Junho de 2008

SISMO - 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 mais

BibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa

BibIme - 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 mais

Padrõ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 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 mais

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software

Agenda 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 mais

Engenharia de Software

Engenharia 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 mais

Padrões de Projeto. Conteúdo. Objetivos

Padrõ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 mais

Padrões de Software (Software Patterns)

Padrõ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 mais

Uma Proposta para a Integração de Modelos de Padrões de Software com Ferramentas de Apoio ao Desenvolvimento de Sistemas

Uma 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 mais

Abstract 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 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 mais

Padrões de Software (Software Patterns)

Padrõ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 mais

Arquitectura de Sistemas de Software

Arquitectura 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 mais

Agenda. Padrões de Projeto para Sistemas Web. Introdução. Padrões. Referências. Misael Santos e Rossana Andrade

Agenda. 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 mais

DIVISÃ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 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 mais

Design Patterns. Viviane Torres da Silva

Design 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 mais

Análise e Projeto Orientados por Objetos

Aná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 mais

Uma 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 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 mais

Laboratório de Desenvolvimento de Software

Laborató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 mais

Tópico 8: Arquitetura, Padrões, Frameworks e MDA

Tó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 mais

Arquitectura de Sistemas de Software

Arquitectura 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 mais

Projeto de software Estrutura do software e arquitetura SWEBOK

Projeto 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 mais

Padrõ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 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 mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 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 mais

Modulo 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 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 mais

Curso - Padrões de Projeto Módulo 1: Introdução

Curso - 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 mais

Módulo III Padrões GOF

Mó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 mais

Tópicos da Aula. POO e Padrões de Projetos. Considere três classes... Reuso de Classes. Locadora de DVD. Sistema Acadêmico

Tó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 mais

Tecnologias Atuais de. Desenvolvimento de Software

Tecnologias 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 mais

Arquitetura 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? 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 mais

Arquitectura 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 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 mais

Estilos Arquiteturais. Prof. Fellipe Aleixo

Estilos 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 mais

Programação Orientada a Objetos. Padrões de Criação

Programaçã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 mais

Arquitectura de Sistemas de Software

Arquitectura 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 mais

Princípios de Engenharia de Software Resumo 8 Semana 8 Versão: 1.0 Data: 05/10/04

Princí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 mais

Padrões de Projeto de Software

Padrõ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 mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tó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 mais

Programação Orientada a Objetos. Padrões Estruturais

Programaçã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 mais

Padrões de Projeto de Software Orientado a Objetos

Padrõ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 mais

31/05/ : Software Visualization. Review to 2 nd Exam. System as a City. Polymetric View. View Crosscutting Concerns.

31/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 mais

Padrõ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, 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 mais

Arquitetura de Software visão emergente

Arquitetura 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 mais

Soluções reutilizáveis para situações ou problemas encontrados comumente em desenvolvimento de software orientado a objetos.

Soluçõ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 mais

Design Pattern Implementation in Java and AspectJ

Design 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 mais

Análise e Projeto Orientados por Objetos

Aná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 mais

Padrões de Design. Jair C Leite

Padrõ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 mais

J930. Padrões. Projeto. Introdução. argonavis.com.br. Helder da Rocha (helder@acm.org)

J930. 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 mais

1Introdução Helder da Rocha (helder@acm.org)

1Introduçã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 mais

Organizando Processos de Requisitos

Organizando 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 mais

Padrões. Arquitetura de Software Thaís Batista

Padrõ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 mais

Prof. Dr. Dilermando Piva Jr. Fatec Indaiatuba

Prof. 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 mais

Programaçã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. 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 mais

Padrões de Projeto de Software

Padrõ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 mais

Padrões GoF. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Padrõ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 mais

As Visões. Visões arquiteturais (revisão)

As 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 mais

Testes com Design Patterns

Testes 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 mais

Definindo um padrão para arquitetura Web

Definindo 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 mais

Design 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 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 mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Engenharia de Software Arquitetura de Software Prof.: Fabrízzio A A M N Soares Aula 1 - Apresentação Ementa Definição de arquitetura de software. Importância e impacto

Leia mais

Aula 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?

Aula 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 mais

PATI-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 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 mais

b) Adapter, Bridge e Composite. c) Builder, Prototype e Singleton. d) Façade, Command e Decorator. e) Factory Method, Interpreter e Template Method.

b) 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 mais

Análise e Projeto Orientados por Objetos

Aná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 mais

Arquitectura de Sistemas de Software

Arquitectura de Sistemas de Software Arquitectura de Sistemas de Software Ademar Aguiar www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt Seminários Arquitectura LEIC, de 30 Sistemas de Outubro de Software, de 2002 LEIC/MEI, 2003/2004 1 Abstract

Leia mais

Padrões. Identificando padrões

Padrões. Identificando padrões 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 mais

MAC Tópicos de P.O.O.

MAC 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 mais

Programação com Objectos 2º Teste Tipo 1º Semestre (120 minutos)

Programaçã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 mais

PROJETO DE ARQUITETURA

PROJETO 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 mais

Arquitetura de Sistemas

Arquitetura 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 mais

Hélio Engholm Jr. Novatec

Hélio Engholm Jr. Novatec Hélio Engholm Jr. Novatec Copyright 2013 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer

Leia mais

Padrões de Desenho (Design Patterns)

Padrõ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 mais

English version at the end of this document

English 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 mais

PADRÕES DE PROJETO: DESIGN PATTERNS

PADRÕ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 mais