Padrões de Projeto de Software
|
|
- Heloísa Ribeiro Pinheiro
- 6 Há anos
- Visualizações:
Transcrição
1 Padrões de Projeto de Software Abstract Factory Paulo Gomide Departamento de Ciência da Computação Universidade de Itaúna
2 Sumary Abstract Factory Definição, Motivação e Aplicabilidade Estrutura, Elementos do Padrão e Colaborações Consequências Consequências Alternativas e Dicas de Implementação Código de Exemplo Padrões Relacionados
3 Abstract Factory Definição Provê uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes concretas Também conhecido como Kit
4 Motivação para o Padrão Motivação Considere a implementação de um toolkit que disponibilize controles que funcionem em diferentes interfaces gráficas. Para ser portável, a aplicação não deveria se referir diretamente aos elementos (widgets) de um padrão de controle particular. Solução: WidgetFactory - interface para criar cada tipo básico de GUI; Uma classe abstrata para cada tipo de widget; Subclasse concreta para cada padrão distinto; Clientes usam a WidgetFactory e não têm conhecimento das classes concretas que implementam widgets particulares; WidgetFactory assegura consistência entre classes concretas.
5 Estrutura do Problema Específico
6 Aplicabilidade Requisitos para se Aplicar o Padrão O uso do padrão Abstract Factory é indicado quando: O sistema deve ser independente de como seus produtos são criados, compostos e representados O sistema deve ser configurado com uma ou com múltiplas famílias de produtos Uma família de objetos de produtos relacionados é projetada para ser usada de forma conjunta e você deva garantir esta restrição Você quer prover uma biblioteca de classes de produtos e quer revelar apenas suas interfaces e não suas implementações
7 Estrutura do Problema Geral
8 Cliente Participantes do Padrão Implementa a interface AbstractProduct; Usa somente as interfaces AbstractFactory e AbstractProduct. AbstractFactory Declara uma interface para a criação de objetos-produto abstratos; Ex.: WidgetFactory. ConcreteFactory Implementa as operações para criar objetos-produto concretos; Ex.: MotifWidgetFactory e QTWidgetFactory.
9 Participantes AbstractProduct Declara uma interface para um tipo de objeto-produto; Ex.: Window e ScrollBar. ConcreteProduct Define um objeto-produto a ser criado pela sua fábrica concreta correspondente; Implementa a interface AbstractProduct; Ex.: MotifWindow e MotifScrollBar
10 Colaborações Principais Contribuição do Padrão AbstractFactory delega a criação de objetos-produto a suas subclasses ConcreteFactory; Normalmente uma única instância da classe ConcreteFactory é criada; Para criar objetos-produto diferentes, os clientes devem usar uma fábrica concreta diferente.
11 Conseqüências Vantagens 1. Isola classes concretas: Uma AbstractFactory encapsula a criação de objetos de produtos; Isola clientes das classes de implementação; O cliente manipula instâncias através de suas interfaces abstratas. 2. Facilita o câmbio de famílias de produtos: A ConcreteFactory só aparece em um lugar: onde ela é instanciada; Uma mudança numa única linha de código pode ser suficiente para mudar a ConcreteFactory que a aplicação usa; A família inteira de produtos muda de uma vez.
12 Vantagens Conseqüências 1. Promove a consistência entre produtos: Produtos de uma determinada família devem funcionar conjuntamente e não misturados com produtos de outra família; O padrão permite implementar esta restrição com facilidade. Desvantagens 1. Dificulta o suporte a novos tipos de produtos O motivo é que a AbstractFactory fixa o conjunto de produtos que podem ser criados; Dar suporte a mais produtos força a extensão da interface da factory o que envolve mudanças na AbstractFactory e em todas suas subclasses ConcreteFactory;
13 Alternativas e Dicas de Implementação Implementação do Padrão 1. Fábricas geralmente são melhor implementadas como Singletons; 2. AbstractFactory apenas declara a interface para a criação de produtos; 3. Deve uma fábrica concreta (ou uma para cada famíla de produtos); 4. Definir fábricas extensíveis.
14 Código de Exemplo
15 Código de Exemplo
16 Código de Exemplo Para implementar um labirinto que contenha cômodos encantados, basta fazer subclasse de MazeFactory:
17 Exemplo Para criar um labirinto que contenha cômodos encantados, basta chamar CreateMaze com um EnchantedMazeFactory:
18 Exemplo Para implementar um labirinto no qual um cômodo ou uma porta pode ter uma bomba, basta fazer subclasses novamente, sobrescrevendo os dois métodos:
19 Exemplo Para criar um labirinto que contenha bombas, basta chamar CreateMaze com um BombedMazeFactory
20 Exemplo
21 Padrões Relacionados Factory Method As principais semelhanças são: Em vez do cliente chamar um método de criação (Factory Method), ele possui um objeto (Abstract Factory) e usa este objeto para chamar os métodos de criação. Factory Method quer que você seja diferente (via herança) para criar objetos diferentes, o Abstract Factory quer que você tenha algo diferente
22 Obrigado pela atenção! Dúvidas?
Padrões de Projeto. Abstract Factory
Padrões de Projeto Padrões de Criação Abstract Factory Prof. Eduardo N F Zagari Prof. Ivan Granja Abstract Factory Provê uma interface para criação de famílias de objetos relacionados ou dependentes sem
Leia maisINF011 Padrões de Projeto. 03 Abstract Factory
INF011 Padrões de Projeto 03 Abstract Factory 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 maisAbstract Factory. Prover uma interface para criar uma família de objetos relacionados ou dependentes sem especificar suas classes concretas
Objetivo Prover uma interface para criar uma família de objetos relacionados ou dependentes sem especificar suas classes concretas Também chamado de Kit Resumo Parece semelhante ao padrão Factory Method,
Leia maisAbstract Factory. Edeyson Andrade Gomes
Abstract Factory Edeyson Andrade Gomes www.edeyson.com.br Introdução Objetivo Prover uma interface para criar uma família de objetos relacionados ou dependentes sem especificar suas classes concretas Também
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 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 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 maisNotação de Classes e Objetos
Padrões Criacionais Notação Notação de Classes e Objetos referencia objeto ClasseAbstrata agrega um ClasseConcreta operaçãoabstrata() cria muitos SubclasseConcreta1 operação() variáveldeinstância SubclasseConcreta2
Leia maisAbstract Factory Pattern
Abstract Factory Pattern SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Comandar uma franquia não é bolinho Estava tudo muito bom com a franquia
Leia maisPadrões de Projeto de Software
Padrões de Projeto de Software Flyweight Paulo Gomide Departamento de Ciência da Computação Universidade de Itaúna Sumary Flyweight Definição Usa compartilhamento para suportar uma grande quantidade de
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 maisFactory Pattern. SISMO - Sistemas e Mobilidade Junho de Departamento de Informática / UFMA
Factory Pattern SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Do que vamos tratar? Criação de objetos não é simplesmente usar o operador
Leia maisINF011 Padrões de Projeto. 10 Bridge
INF011 Padrões de Projeto 10 Bridge 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 Tecnológica
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 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 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 maisPadrões de Projeto. Factory Method
Tópicos Avançados em Linguagem de Programação Padrões de Projeto Prof. Alexandre Vidal DEINF-UFMA Classificação: Propósito: Criacional Escopo: Objetos Intenção: Construção Intenção: define uma interface
Leia maisINF011 Padrões de Projeto. 05 Factory Method
INF011 Padrões de Projeto 05 Factory Method 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 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 maisDefinição. Em POO, a abstração é o processo de esconder os detalhes de implementação de uma aplicação.
Abstração JAVA Definição Em POO, a abstração é o processo de esconder os detalhes de implementação de uma aplicação. Em Java, a abstração é alcançada através de classes abstratas e interfaces. Classes
Leia maisPadrões Fábrica. Simple Factory Factory Method
Universidade Federal de Uberlândia Faculdade de Computação Disciplina: POO2 Prof. Fabiano Azevedo Dorça Padrões Fábrica Simple Factory Padrões Fábrica Padrão Simple Factory: fornece interfaces para criar
Leia maisSingleton e Adapter. Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé)
e Adapter Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé) O que vimos na última aula? Factory Method Abstract Factory 2 O que veremos hoje? (padrão de criaçã) Adapter
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 ó 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 maisStructural Patterns - Bridge
Objetivo é separar a abstração da implementação, de tal forma que possibilidade um independência entre as duas. Caminho natural para uma abstração com diversas possibilidades de implementação é a herança.
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 maisLinguagem de Programação III
Linguagem de Programação III Aula-7 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando
Leia maisClasse Abstrata e Interface
Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public
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 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 maisINF011 Padrões de Projeto. 02 Creational Patterns
INF011 Padrões de Projeto 02 Creational Patterns Sandro Santos Andrade sandroandrade@ifba.edu.br Instituto Federal de Educação, Ciência e Tecnologia da Bahia Departamento de Tecnologia Eletro-Eletrônica
Leia maisFrameworks. Viviane Torres da Silva
Frameworks Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/es1 Frameworks Motivação Definição Classificação Características Propriedades Técnicas de Customização Frameworks
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 maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Leia maisLinguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces
Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas
Leia maisSingleton. Como a maioria dos programadores organizaria o código para acessar informação de configuração? Eis um exemplo:
Introdução Como a maioria dos programadores organizaria o código para acessar informação de configuração? Eis um exemplo: public class Config { public static final String DEFAULT_READ_COMMUNITY_NAME =
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisProgramação Orientada a Objetos. Prof. Diemesleno Souza Carvalho
Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Classes Abstratas Programação
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 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 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 Editor Gráfico Vamos usar nosso framework do Motor, com pequenas mudanças (para permitir interação com
Leia maisIntrodução aos Padrões de Projeto. Sylvio Barbon Jr
Introdução aos Padrões de Projeto Sylvio Barbon Jr 25 février 2016 Introdução Disciplina Engenharia de Software : São Tratados principalmente os tesmas : Metodologia : No desenvolvimento
Leia maisLição 11 Herança, polimorfismo e interfaces
Lição 11 Herança, polimorfismo e interfaces 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Definir superclasses e subclasses Criar Override de métodos de superclasses Criar métodos e classes
Leia maisPadrões de Projeto. B r i dge. B r i d ge. T ó 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. Classificação: Intenção:
T ó 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 Classificação: Propósito: Estrutural Escopo: Objetos Bridge Prof. Alexandre Vidal DEINF-UFMA Intenção:
Leia maisTópicos Avançados em Linguagem de Programação. Builder. Builder. Builder. Classificação: Padrões de Projeto. Builder Pattern.
Tópicos Avançados em Linguagem de Programação Padrões de Projeto Pattern Prof. Alexandre Vidal DEINF-UFMA Classificação: Propósito: Criacional / Escopo: Objetos Padrão de Construção (intenção/metsker)
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 maisO PARADIGMA ORIENTADO POR OBJETOS
O PARADIGMA ORIENTADO POR OBJETOS A idéia básica do paradigma orientado a objetos é imaginar que programas simulam o mundo real: um mundo povoado de objetos. Dessa maneira, linguagens baseadas nos conceitos
Leia mais4.6. UML Diagramas de componentes
Engenharia de Software 4.6. UML Diagramas de componentes Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Componentes são partes, executáveis e substituíveis, (idealmente reutilizáveis) de um sistema
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 mais" ##$#$!% # & #$#$ !!!!"!
" ##$#$!% # & #$#$ Abstract Factory, Builder, Singleton, Factory Method, Prototype, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responsability, Command, Interpreter, Iterator,
Leia maisSEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS
SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Prof. Dr. Daniel Caetano 2014-1 DISCUSSÃO Visão Geral dos Paradigmas Quais os paradigmas mais comuns? Do que é composto um programa
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Herança e Polimorfismo Prof. Francisco de Assis S. Santos, Dr. São José, 2015. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos
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 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 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 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 maisReúso de Software. Adaptado de. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 18 Slide by Pearson Education
Reúso de Software Adaptado de Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 18 Slide 1 Reúso de Software Na maioria das disciplinas de engenharia, os sistemas são projetados por meio
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing
Aula 1- Interfaces Gráficas com Swing Conteúdo Programático desta aula Explorar o pacote Swing para desenvolver Interfaces em Java Utilização de Interfaces gráficas para interagir com objetos previamente
Leia maisTécnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes.
DCC / ICEx / UFMG Técnicas de Reutilização Reutilização em Programação Orientada a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Reuso de classes Bibliotecas Frameworks Considere três classes
Leia maisAvançando em Java com
Avançando em Java com Polimorfismo (Interfaces) Prof.: Hugo Barros Interfaces Como já foi dito, java não permite que uma classe herde recurso de mais de uma classe. Herança múltiplipa é um recurso muito
Leia maisIteradores. Iteradores. Isabel Harb Manssour. Roteiro. Coleções
Implementação de Genéricos, Iteradores Isabel Harb Manssour Porto Alegre, maio de 2006 Roteiro Implementação de Genéricos Coleções Conceito de Genérico Implementação Iteradores Conceito Utilização ForEach
Leia maisClasses e Objetos. Sintaxe de classe em Java
Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados
Leia maisProgramação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs
Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância
Leia maisDESIGN PATTERNS. Como evitar problemas no futuro
I DESIGN PATTERNS Como evitar problemas no futuro 1 Zalba Monteiro Desenvolvedora Full Stack Desenvolvedora de software há 7 anos, atualmente trabalhando na CWI Software. Amante de tecnologias que envolvem
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos 2 Prof. Fabiano Dorça. Padrões de Projeto.
Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos 2 Prof. Fabiano Dorça Padrões de Projeto Permite definir famílias de comportamentos, que podem ser (re)utilizados
Leia maisCurso - Padrões de Projeto Módulo 2: Padrões de Criação
Curso - Padrões de Projeto Módulo 2: Padrões de Criaçã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 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 mais9 Classes Abstractas e Interfaces
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisPROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001
PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO Projeto de Programas PPR0001 QUALIDADE DO PROJETO 2 3 Qualidade do Projeto de Software Modularidade: gerar particionamento em elementos que executam funções
Leia maisImplementação de Padrões de Projeto em Java e AspectJ
Implementação de Padrões de Projeto em Java e AspectJ Jan Hannemann e Gregor Kiczales University of British Columbia Bruno Cardoso Reutilização de Software 18/09/13 DCC/ICEx/UFMG Padrões de Projeto (GoF
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 maisOrientação a objetos. Objetos ou Instâncias I
Orientação a objetos Objetos ou Instâncias Métodos ou Mensagens Encapsulamento Classes Variáveis da Classe X Variáveis da Instância Métodos da Classe X Métodos da Instância Relacionamentos Identificando
Leia maisUML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Revisão Classes e Objetos Classes são uma das unidades básicas de um programa Java Usamos as classes para
Leia maisFrameworks. Profa. Dra. Rosana Teresinha Vaccare Braga. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo
Frameworks Profa. Dra. Rosana Teresinha Vaccare Braga Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Laboratório de Engenharia de Software Instituto de Ciências Matemáticas
Leia maisOrientação a Objetos Classes Abstratas
Orientação a Objetos Classes Abstratas Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/
Leia maisALUNO: RONI FABIO BANASZEWSKI
Model-View-Controller ALUNO: RONI FABIO BANASZEWSKI Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que uma mesma
Leia maisDiagramas de Sequência Exemplo
217 Diagramas de Sequência Exemplo Seja um sistema de gestão de contéudos. A especificação do use case Criar Conta de Blog vai ser detalhada, no que concerne à descrição da colaboração, num diagrama de
Leia maisEngenharia de Software
Engenharia de Software Requisitos de Software Professor: Charles Leite Engenharia de requisitos Os requisitos de um sistema são as descrições do que o sistema deve fazer, os serviços que oferece e as restrições
Leia maisM e d iator. Padrões de Projeto. Mediator. Prof. Alexandre Vidal DEINF-UFMA. M e di a t or
T ó 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 Classificação: Propósito: Comportamental Escopo: Objeto Intenção: definir
Leia maisObserver. Edeyson Andrade Gomes
Observer Edeyson Andrade Gomes www.edeyson.com.br Introdução Objetivo O padrão Observer permite que objetos observadores sejam avisados da mudança de estado ou outros eventos ocorrendo num objeto observado
Leia maisAula 4 Encapsulamento e Relacionamento Cleverton Hentz
Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Sumário } Encapsulamento } Propriedades } Relacionamentos } Composição } Herança 2 O que é encapsulamento? } O que vocês entendem por encapsular?!
Leia maisVB.NET - Orientação a objetos : conceitos básicos em 10
lições. VB.NET - Orientação a objetos : conceitos básicos em 10 Lição 1 - Como criar classe e métodos. Instanciando um objeto e acessando o método da classe. - Para criar uma classe basta usar a palavra
Leia maisACH2002. Orientação a Objetos
ACH2002 Orientação a Objetos Professores: Delano Medeiros Beder Fátima L. S. Nunes EACH USP O que é abstração? Abstração s.f. Operação do espírito, que isola de uma noção um elemento, negligenciando os
Leia maisHerança e Polimorfismo
Herança e Polimorfismo 2013 O que veremos hoje? Herança e polimorfismo Transparências baseadas no material do Prof. Gilbert Azevedo e Prof. Jailton Carlos Objetivos Conceito de Polimorfismo em POO Mais
Leia maisModelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo
MODELAGEM DE DADOS Sistemas de Banco de Dados Profa. Rosemary Melo SISTEMAS DE BANCO DE DADOS OBJETIVOS Apresentar os conceitos fundamentais de Sistemas de Banco de Dados. Principais componentes dos SGBDs
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 maisUsuários. Interface com Usuários. Programa Aplicativo. Interfaces de Programação. Sistema Operacional
11. Interfaces Neste capítulo é apresentado o conceito de interfaces Java, sua aplicação no projeto de hierarquias de tipos e sua relação com hierarquias de classes. Ao final deste capítulo o estudante
Leia maisa determinadas condições de uso. Este mecanismo permite, ainda, a integração de domínios externos. A descrição da interface é feita de forma
120 5 Conclusão Este trabalho propõe uma arquitetura para adaptação e meta-adaptação de Sistemas Hipermídia. Com a adaptação, a utilização de sistemas hipermídia se torna mais eficaz evitando que a quantidade
Leia maisInterfaces e Classes Abstratas
Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos
Leia maisPCS3413 Engenharia de Software e Banco de Dados
PCS3413 Engenharia de Software e Banco de Dados Aula 23 Escola Politécnica da Universidade de São Paulo 1 Acoplamento! Indica dependência entre classes.! Deve ser o menor possível.! Direcionar associações
Leia maisConceitos de Programação Orientada a Objetos
Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não
Leia maisParadigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto
Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural
Leia maisEngenharia de Software
Engenharia de Software Design Principles Representando SW em UML OO em C Pattens úteis para embedded Rodrigo M A Almeida Design Principles Design Principles são guias para decompor as funcionalidades e
Leia maisProgramação por Objectos Introdução. Introdução 1/18
Programação por Objectos Introdução LEEC@IST Introdução 1/18 História (1) [60s] Simula-67, Dahl e Nygaard da Univ. de Oslo Primeira linguagem com conceitos OO. [70s] Smalltalk, da Xerox Primeira implementação
Leia mais15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos
DCC / ICEx / UFMG Pensar Orientado a Objetos Projeto Orientado a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Onde quer que você olhe no mundo real, você vê objetos Pessoas, animais, plantas,
Leia maisJava para Desktop. Programação Orientada à Objetos 2 JSE
Java para Desktop Programação Orientada à Objetos 2 JSE Encapsulamento significa "ocultar informações, ele define que cada objeto contém todos os detalhes de implementação necessários sobre como ele funciona
Leia mais