Padrões Comportamentais
|
|
- Afonso Molinari Guterres
- 6 Há anos
- Visualizações:
Transcrição
1 Padrões Comportamentais Parte 1 Soluções Reutilizáveis de Software Orientado a Objetos Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)
2 Padrões de Projeto Comportamentais 1. Chain of Responsibility 2. Command 3. Interpreter 4. Iterator 5. Mediator 6. Memento 7. Observer 8. State 9. Strategy 10. Template Method 11. Visitor
3 Padrões Comportamentais Se preocupam com algoritmos e a atribuição de responsabilidade entre objetos Descreve o papel de classes e objetos como se dará a comunicação entre os envolvidos
4 Chain of Responsibility Cadeia de Responsabilidades
5 Intenção Evitar o acoplamento do remetente de uma solicitação ao seu receptor, ao dar a mais de um objeto a oportunidade de tratar a solicitação Encadear os objetos receptores, passando a solicitação ao longo da cadeia até que um objeto a trate
6 Motivação Considere um recurso de ajuda (help) sensível ao contexto para uma interface gráfica de usuário: A ajuda está acessível em qualquer ponto da interface A ajuda depende do ponto (contexto) onde foi acionada O problema é que o objeto que fornece a ajuda não é conhecido explicitamente pelo solicitante O que necessitamos é de uma maneira de desacoplar o botão que inicia a solicitação de ajuda dos objetos que podem fornecer as informações de ajuda
7 Aplicabilidade Utilizar quando: 1. Mais de um objeto pode tratar uma requisição e o objeto que irá tratar a mesma não é conhecido a priori 2. Desejamos fazer uma solicitação para um dentre vários objetos, sem especificar explicitamente o receptor 3. O conjunto de objetos que pode tratar uma solicitação deveria ser especificado dinamicamente
8 Estrutura
9 Estrutura Uma típica estrutura de objetos se parece seria:
10 Exemplo / Participantes
11 Exemplo / Participantes
12 Exemplo / Participantes 1. Handler (HelpHandler) Define uma interface para tratar solicitações (opcional) implementa um link para seu sucessor 2. ConcreteHandler (PrintButton, PrintDialog) Trata solicitações de sua responsabilidade Pode acessar o seu sucessor Se pode tratar, assim o faz, se não passa a solicitação para o seu sucessor 3. Client Inicia uma solicitação para um objeto da cadeia
13 Consequências 1. Acoplamento reduzido 2. Flexibilidade adicional na atribuição de responsabilidades a objetos 3. A recepção não é garantida
14 Command Também conhecido como Action ou Transaction
15 Intenção Encapsular uma solicitação como um objeto, desta forma permitindo parametrizar clientes com diferentes solicitações, enfileirar ou fazer o registro (log) de solicitações e suportar operações que podem ser desfeitas
16 Motivação Algumas vezes é necessário emitir solicitações para objetos nada sabendo sobre a operação que está sendo solicitada ou sobre o receptor da mesma Exemplo: no contexto de frameworks para desenvolver interfaces gráficas com o usuário Incluem objetos como botões de menu que executam uma solicitação em resposta a uma entrada do usuário Mas, só as classes de domínio sabem o que precisa ser feito em resposta a uma solicitação do usuário
17 Motivação Continuando... O padrão Command permite que objetos do framework possam fazer solicitações de objetos não especificados, transformando a própria solicitação em um objeto A chave desse padrão é a classe abstrata Command, a qual define uma interface para execução de operações Na sua forma mais simples, essa interface inclui uma operação abstrata execute()
18 Aplicabilidade Utilizar o padrão Command quando necessitamos: 1. parametrizar objetos por uma ação a ser executada 2. especificar, enfieirar e executar solicitações em tempos diferentes 3. suportar desfazer operações O objeto Command podem armazenar estado, tornando possível a reversão dos afeitos da sua ação Operação unexecute() Os comandos executados podem ser armazenados em uma lista histórica tornando possível desfazer uma série de comandos em sequência
19 Aplicabilidade Utilizar o padrão Command quando necessitamos: 4. suportar o registro (logging) de mudanças de maneira que possam ser replicadas no caso de uma queda no sistema 5. estruturar um sistema em torno de operações de alto nível construídas sobre operações primitivas Comum em sistemas que suportam transações
20 Estrutura
21 Exemplo/Participantes
22 Exemplo/Participantes
23 Exemplo/Participantes
24 Exemplo/Participantes
25 Exemplo/Participantes 1. Command Define uma interface para a execução de uma operação 2. ConcreteCommand (PasteCommand, OpenCommand) Implementa a operação execute() correspondente 3. Client (Application) Criar um objeto ConcreteCommande envia a seu receptor 4. Invoker (MenuItem) Solicita ao Command a execução da solicitação 5. Receiver (Document, Application) Sabe como executar a operação associada a uma solicitação
26 Consequências 1. Desacopla o objeto que invoca a operação daquele que sabe como executá-la 2. Commands podem ser manipulados e estendidos como qualquer outro objeto 3. Você pode montar comandos para formar um comando composto (MacroCommand) 4. É fácil acrescentar novos comandos, pois não é necessário modificar as classes existentes
27 Interpreter Interpretador
28 Intenção Dada uma linguagem, definir uma representação para a sua gramática juntamente com um interpretador que usa representação para interpretar sentenças da linguagem
29 Motivação Se um problema específico de ocorre com frequência suficiente, pode ser útil expressar instâncias do problema como sentenças de uma linguagem (simples) Por exemplo: Pesquisar cadeias de caracteres que correspondem a um determinado padrão (pattern matching) é um problema comum à suscitou a criação de expressões regulares
30 Motivação O padrão Interpreter descreve como definir uma gramática para linguagens simples Representar sentenças nessa linguagem Interpretar tais sentenças
31 Aplicabilidade Usamos o padrão Iterpreter quando: 1. A gramática é simples 2. A eficiência não é uma preocupação crítica
32 Estrutura
33 Exemplo/Participantes Exemplo de gramática: expression ::= literal alternation sequence repetition '(' expression ')' alternation ::= expression ' ' expression sequence ::= expression '&' expression repetition ::= expression '*' literal ::= 'a' 'b' 'c'... { 'a' 'b' 'c'... }*
34 Exemplo/Participantes
35 Exemplo/Participantes
36 Exemplo/Participantes 1. AbstractExpression (RegularExpression) Declara uma operação abstrata interpret() 2. TerminalExpression (LiteralExpression) Implementa uma operação interpret() associada aos símbolos terminais da gramática 3. NonTerminalExpression (AlternationExpression, RepititionExpression, SequenceExpression) Implementa uma operação interpret() par símbolos nãoterminais da gramática Pode chamar a se mesmo de forma recursiva
37 Exemplo/Participantes 4. Context Contém informação que é global para o interpretador 5. Client Constrói ou recebe uma árvore sintática abstrata que representa uma determinada sentença na linguagem definida pela gramática A árvore abstrata é montada a partir de instâncias das classes NonTerminalExpression e TerminalExpression
38 Consequências 1. Fácil de mudar e estender a gramática 2. Implementar a gramática também é fácil 3. Gramáticas complexas são difíceis de manter 4. Possibilita ir acrescentando novas formas de interpretar expressões
39 Iterator Também como Cursor
40 Intenção Fornecer um meio de acessar, sequencialmente, os elementos de uma coleção de objetos sem expor a sua representação subjacente
41 Motivação Um objeto agregador, como uma lista, deveria oferecer um meio de acessar seus elementos sem expor a sua estrutura interna Podemos também desejar percorrer a coleção de diferentes maneiras O padrão Iterator permite fazer tudo isso A chave desse padrão é retirar a responsabilidade de acesso e percurso do objeto lista e colocá-la em um objeto Iterator A classe Iterator define uma interface para o acesso aos elementos da lista
42 Aplicabilidade Use o padrão Iterator para: 1. acessar os conteúdos de um objeto agregador (coleção) sem expor sua representação interna 2. suportar múltiplos percursos pelos objetos agregados 3. Fornecer uma interface uniforme que percorra diferentes estruturas agregadoras (polimorfismo)
43 Estrutura
44 Exemplo/Participantes
45 Exemplo/Participantes 1. Iterator Define uma interface para acessar e percorres uma coleção 2. ConcreteIterator Implementa a interface Iterator Mantém o controle da posição corrente no percurso 3. Aggregate Define uma interface para a criação de um objeto Iterator 4. ConcreteAggregate Cria a retorna uma instância do Iterator apropriado
46 Consequências 1. Ele suporta variações no percurso de uma coleção 2. Iterators simplificam a interface da coleção 3. Mais do que um percurso pode estar em curso (ou pendente), em uma coleção
Programação Orientada a Objetos. Padrões Comportamentais
Programação Orientada a Objetos Padrões Comportamentais 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
Leia maisPadrões Comportamentais. Padrões de Projeto Comportamentais. Motivação. Chain of Responsibility (CoR) Padrão Chain of Responsibility
DCC / ICEx / UFMG Padrões Comportamentais Padrões de Projeto Comportamentais Command Observer Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Interpreter Iterator Memento Strategy Template Method
Leia maisPadrões Comportamentais
Padrões Comportamentais Parte 2 Soluções Reutilizáveis de Software Orientado a Objetos Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Padrões de Projeto Comportamentais 1. Chain of Responsibility 2.
Leia maisBehavioral Patterns - Interpreter
Interpretador de gramática Motivação vem da necessidade de associar a uma representação de gramática a um objeto que pode interpretá-la. Situação em que um objeto necessite de informações que devem passar
Leia maisBEHAVIOURAL DESIGN PATTERNS
BEHAVIOURAL DESIGN PATTERNS Jann Claude Mousquer 1, Kenner Alan Kliemann 1, Miguel Diogenes Matrakas 2 1 Curso de Ciência da Computação Faculdades Anglo-Americano (FAA) 2 Mestrado em Informática Aplicada
Leia maisT ó p i c o s A v a n ç a d o s e m L i n g u a g e m d e P r o g r a m a ç ã o. Padrões de Projeto. Prof. Alexandre Vidal. DEINF-UFMA Janeiro de 2007
Padrões de Projeto Prof. Alexandre Vidal DEINF-UFMA Janeiro de 2007 Iterator (padrão comportamental) intenção: prover acesso seqüencial aos elementos de um objeto agregado sem expor sua representação interna.
Leia maisUniversidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça. Padrões de Projeto. Padrão Command
Universidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça Padrões de Projeto Padrão Command O padrão Command encapsula um comando em um objeto. Tem como premissa desacoplar o objeto cliente
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 maisVítor E. Silva Souza vitorsouza@gmail.com
Curso - Padrões de Projeto Módulo 4: Padrões de Comportamento 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:
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 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 mais" ##$#$!% # & #$#$ !!!!"!
" ##$#$!% # & #$#$ Abstract Factory, Builder, Singleton, Factory Method, Prototype, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responsability, Command, Interpreter, Iterator,
Leia maisSumário. Prefácio 12. Capítulo 1 - Técnicas Simples Para um Código Limpo 23
Prefácio 12 Para quem é esse livro? 13 Objetivos do livro 13 Por que Engenharia de Software? 14 Como esse livro está escrito 16 Perguntas 16 Código em texto corrido 16 Caixas de código 16 Caixas com conteúdo
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 05 Padrões GoF (Singleton e Iterator) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype
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 maisINF011 Padrões de Projeto. 11 Composite
INF011 Padrões de Projeto 11 Composite 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 maisPadrões de Design. Padrões de Design. Abstract Factory. Padrões de Design. Padrões de Design Abstract Factory. Abstract Factory.
Escopo Classe Objeto Finalidade Criação Estrutural Comportamental Factory Method Interperter Abstract Factory Builder Prototype Bridge Composite Facade Flyweight Proxy Chain of Responsibility Command Iterator
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 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 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 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 maisComposite. Padrões de Projeto. Composite. Prof. MSc Manfrine Santos. Anderson Fernandes Esteves. Manaus, Outubro de / 19
Padrões de Projeto Anderson Fernandes Esteves Prof. MSc Manfrine Santos Manaus, Outubro de 2007 1/ 19 1 2/ 19 Compor objetos em estruturas de árvore a fim de expressar hierarquias do tipo todo-parte. permite
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 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 maisBehavioral Patterns Chain of ofresponsability
Evitar o acoplamento entre o remetente de uma requisição e os possíveis destinatários desta requisição. Mais de um objeto pode atender a requisição de processamento. A requisição passa por toda uma cadeia
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 maisINF011 Padrões de Projeto. 21 Memento
INF011 Padrões de Projeto 21 Memento 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 maisMódulo III Padrões GOF: Iterator
Módulo III Padrões GOF: Iterator 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 Padrões
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 maisProfa. Thienne Johnson
Profa. Thienne Johnson 1 E. Gamma and R. Helm and R. Johnson and J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison- Wesley, 1995. GoF Design Patterns - with examples
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 maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Interfaces Uma interface é uma forma abstrata de descrever um objeto A classe fixa a forma de um objeto
Leia mais3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks
48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o
Leia maisEspecialização em web com interfaces ricas
Especialização em web com interfaces ricas Padrões de Projeto - Comportamentais Prof. Fabrízzio Alphonsus A. M. N. Soares fabrizzio@inf.ufg.br professor.fabrizzio@gmail.com Instituto de Informática Universidade
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 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 maisLEIC-T LERC MEIC-T 2011/2012 1º Semestre Programação com Objetos 2012/01/07 11h00m 3/10
2/10 1.1. (1.5 val.) Os mecanismos de herança entre classes e de composição de objetos são, por vezes, apresentados como alternativos, face à disponibilização de funcionalidade a uma classe. Compare-os,
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 maisCapítulo 1. Aspectos Preliminares
Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de
Leia maisCompiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores
Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente
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 maisIntrodução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Leia maisIFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli
Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação
Leia maisConceitos de Sistemas de Banco de Dados INE 5323
Conceitos de Sistemas de Banco de Dados INE 5323 Prof. Mario Dantas Introdução Por quê Sistemas de Banco de Dados Visão dos Dados Modelos de Dados Linguagem de Definição de Dados (DDL) Linguagem de Manipulação
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 maisBehavioral Patterns - Command
Encapsula uma requisição como um objeto. Um comando como um objeto. Situação onde é necessário emitir requisição e não se tem conhecimento sobre o que exatamente será feito ou o receptor não desconhece
Leia maisPadrões Comportamentais
Padrões Comportamentais Formulário para Descrição de Padrões Nome e Classificação Intenção Também Conhecido Como Motivação Aplicabilidade Estrutura Participantes Colaboradores Conseqüências Implementação
Leia maisEstilo: BlackBoard. BlackBoard = repositório de dados compartilhados
Estilo: BlackBoard Útil para problemas no qual não há uma solução determinística Uma coleção de programas independentes que trabalham cooperativamente em uma estrutura de dados comum (blackboard) Vários
Leia maisBanco de Dados. SGBDs. Professor: Charles Leite
Banco de Dados SGBDs Professor: Charles Leite Sistemas de BD Vimos que um BANCO DE DADOS representa uma coleção de dados com algumas propriedades implícitas Por exemplo, um BD constitui os dados relacionados
Leia maisAULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.
AULA 02 OBJETIVO: Características da Linguagem Orientada a Objetos. HABILIDADES TRABALHADAS: Comparação das características das linguagens orientadas a objetos frente às linguagens estruturadas. Conhecimentos
Leia maisDada a linguagem, números romanos, construir uma representação para a gramática dela junto com um interpretador para essa gramática.
Resumo Interpreter Amanda e Nikson Problema Dada uma linguagem, definir uma representação para a sua gramática e um interpretador que usa esta representação para interpretar sentenças da linguagem. Exemplo
Leia maisAs classes Formatador e ElementosAFormatar
Introdução Vamos considerar o problema de formatação no editor de documentos WYSIWYG Já sabemos como é a representação da informação Mas ainda não sabemos como gerar uma estrutura particular de linhas,
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 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 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 maisFERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS
FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS Acadêmico: Roger Anderson Schmidt Orientador : Marcel Hugo Supervisor : Ricardo de Freitas Becker Empresa
Leia maisCapítulo 6: Linguagens de Programação
Capítulo 6: Linguagens de Programação Ciência da Computação: Uma Visão Abrangente 11a Edição by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Capítulo 6: Linguagens de programação 6.1 Perspectiva
Leia maisINF011 Padrões de Projeto. 04 Builder
INF011 Padrões de Projeto 04 Builder 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 maisMatéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
Matéria Introdutória Banco de Dados Motivação Necessidade de armazenar grandes quantidades de dados Necessidade de acessar as informações de maneira eficiente e segura Evolução histórica: desenvolvimento
Leia mais6 A Ferramenta de Medição e Avaliação
77 6 A Ferramenta de Medição e Avaliação Neste capítulo é apresentada a ferramenta AJATO, acrônimo para Ferramenta de Avaliação AspectJ 11. Esta ferramenta permite medir e avaliar sistemas implementados
Leia maisPadrões GoF Strategy, Observer, Singleton, Abstract Factory e outros...
Padrões GoF Strategy, Observer, Singleton, Abstract Factory e outros... SSC-526 Análise e Projeto Orientados a Objeto Profa. Dra. Elisa Yumi Nakagawa 2º semestre de 2013 1 Mais Padrões GoF Strategy Observer
Leia maisIntrodução ao Java. Prof. Herbert Rausch Fernandes
Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
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 maisCapítulo II Gramáticas
Capítulo II Gramáticas II.1 Motivação O que é uma Gramática? Um sistema gerador de linguagens; Um sistema de reescrita; Uma maneira finita de representar uma linguagem; Um dispositivo formal usado para
Leia maisAula 03. Evandro Deliberal
Aula 03 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal Concorrência Método Sincronização Problemas: Perda de consistência Acesso a dados inconsistentes Perda de atualizações
Leia maisIntrodução. Compiladores Análise Semântica. Introdução. Introdução. Introdução. Introdução 11/3/2008
Compiladores Análise Semântica Fabiano Baldo Análise Semântica é por vezes referenciada como análise sensível ao contexto porque lida com algumas semânticas simples tais como o uso de uma variável somente
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 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 maisPADRÕES DE PROJETO DE SOFTWARE
Universidade de São Paulo, Instituto de Ciências Matemáticas e de Computação PADRÕES DE PROJETO DE SOFTWARE SSC 621: Análise e Projeto Orientados a Objetos Prof. Dr. Lucas Bueno R. Oliveira 2º Semestre
Leia maisCapítulo II Gramáticas
Capítulo II Gramáticas II.1 Motivação O que é uma Gramática? Um sistema gerador de linguagens; Um sistema de reescrita; Uma maneira finita de representar uma linguagem; Um dispositivo formal usado para
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 maisProtótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator
Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Ederson Evaristo Jantsch Orientador: Marcel Hugo 09/07/2002 Roteiro Introdução Aplicação multicamadas Tecnologias
Leia maisGerência de Dispositivos. Adão de Melo Neto
Gerência de Dispositivos Adão de Melo Neto 1 Gerência de Dispositivos Introdução Acesso ao Subsistema de E/S Subsistema de E/S Device Drivers Controladores Dispositivos de E/S Discos Magnéticos Desempenho,
Leia maisDecorator e Composite. Nazareno Andrade (baseado no material de Hyggo Almeida)
Decorator e Composite Nazareno Andrade (baseado no material de Hyggo Almeida) Decorator Vocês sabem como ler um arquivo texto em Java??? Pode-se usar a classe java.io.fileinputstream Vamos fazer um teste
Leia maisComputação Paralela. Conceitos de Programação Orientada ao Objecto. João Luís Ferreira Sobral Departamento do Informática Universidade do Minho
Computação Paralela Conceitos de Programação Orientada ao Objecto João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Setembro 2006 Revisão Conceitos de Programação Orientada ao
Leia maisEstruturas de Dados Apresentação
Estruturas de Dados Apresentação Prof. Eduardo Alchieri Objetivos Apresentar técnicas fundamentais na análise e projeto de estruturas de dados em programas computacionais Vamos aprender: Quais são as principais
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 07 Padrões GoF (Command e Template Method) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype
Leia maisAnálise. Orientada a Objetos Modelo Funcional, Modelo Estrutural e Modelo Comportamental. Linguagens: Java, C++, etc.
Análise Estruturada Modelo Essencial ou Lógico constitui-se de dois sub-modelos (Modelo Ambiental e Modelo Comportamental) e um Dicionário de Dados. Linguagens: Fortran, Cobol, C, etc. Orientada a Objetos
Leia maisPadrões de Projeto. Factory Method
Padrões de Projeto Padrões de Criação Factory Method Prof. Eduardo N F Zagari Prof. Ivan Granja Factory Method Também conhecido como Construtor Virtual Em muitas aplicações OO, um objeto cliente precisa
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 06 Padrões GoF (Factory Method e Abstract Factory) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method
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 maisProgramação com Objectos
Programação com Objectos PADRÕES DE DESENHO Classificaçã Objectivo Criação Estrutura Comportamento Introdução Alguns Padrões de Desenho Classe Factory Method Adapter Interpreter Template Method O que é
Leia maisIntrodução. Por que desenvolver ALGORITMO?
Introdução Programa Computacional busca da necessidade de solução de um problema particular: a geração automática de documentos, o controle de um equipamento eletrodoméstico, a transmissão de informações
Leia maisEstruturas de Controle: Nível de Unidades de Programação
Paradigmas de Linguagens I 1 1.5... Estruturas de Controle: Nível de Unidades de Programação As estruturas de controle no nível de unidades de programação são mecanismos de linguagens utilizados para especificar
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Template Method Paulo Gomide Departamento de Ciência da Computação Universidade de Itaúna Sumary Template Method Definição, Motivação e Aplicabilidade Estrutura, Elementos
Leia maisPadrões de Projeto. Intenção: Observer. Motivação: Motivação:
Tópic os Avançados em Linguagem de Programação Padrões de Projeto Observer Prof. Alexandre Vidal Intenção: define uma dependência um-para-muitos entre objetos, de modo que, se um objeto sofre uma modificação
Leia maisCreational Patterns Factory method
Objetivo do Factory method é definir qual será a subclasse que utilizada um cliente. Permite que o sistema funcione sem o conhecimento prévio das subclasses. Assim um framework pode ser construído apenas
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia maisAlgoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza
Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha Conceitos Lógica de Programação técnica de encadear pensamentos
Leia maisAULA 2 VISÃO BÁSICA DE CLASSES EM PHP
AULA 2 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.
Leia maisEngenharia de Software Orientada a objetos. Prof. Rogério Celestino dos Santos
Engenharia de Software Orientada a objetos Prof. Rogério Celestino dos Santos http://sites.google.com/site/rogeriocsaulas/ Estereótipos são uma maneira de destacar determinados componentes do diagrama,
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Conceitos Básicos Introdução Banco de Dados I Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Dados
Leia maisArquitecturas Paralelas I Computação Paralela em Larga Escala. Conceitos de Programação Orientada ao Objecto
Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano Conceitos de Programação Orientada ao Objecto (gec.di.uminho.pt/lesi/ap10203/aula02poo.pdf) João Luís Ferreira Sobral Departamento
Leia mais