Factory Method. Edeyson Andrade Gomes
|
|
|
- Maria de Begonha Alencastre de Escobar
- 10 Há anos
- Visualizações:
Transcrição
1 Factory Method Edeyson Andrade Gomes
2 Agenda Resumo Quando Usar Participantes Colaborações Conseqüências Exemplo Estrutura Genérica Exercício 2
3 Resumo Ao invés do cliente instanciar objetos através da chamada a new, ficando acoplado com a classe concreta que ele instancia, ele chama um método de criação (FactoryMethod). 1. carro = new Carro() 2. O objeto carro é uma instância da classe concreta Carro. Isso está pré-determinado neste código. Exemplo Acoplado 3
4 Resumo Ao invés do cliente instanciar objetos através da chamada a new, ficando acoplado com a classe concreta que ele instancia, ele chama um método de criação (FactoryMethod). E se o objetivo é instanciar carro com uma classe concreta determinada em tempo de execução: 1. carro = criacarro() 2. O método criacarro pode criar um carro tendo como retorno um Carro Abstrato. Logo, criacarro concreto determina qual carro concreto criar. criacarro() é um Factory Method 4
5 Resumo Usando o Factory Method, uma classe cria um objeto pelo TIPO Abstrato e uma subclasse concreta sua determina qual a classe concreta do objeto a criar. public abstract Assento CriaAssento(); public Assento CriaAssento() { } return new AssentoMadeira() ; Mudar a subclasse concreta que cria o objeto permite mudar a classe do objeto criado 5
6 Quando Usar Quando uma classe (o criador) não pode antecipar a classe dos objetos que deve criar Quando uma classe quer que suas subclasses especifiquem os objetos criados 6
7 Participantes Produto Define a interface (o TIPO) dos objetos criados pelo Factory Method ICano ProdutoConcreto Implementa a interface Produto Cano da Tigre Criador Declara o Factory Method que retorna um objeto do tipo Produto Encanamento 7
8 Participantes Às vezes, o Criador não é abstrato Pode envolver uma classe concreta que tenha uma implementação padrão para o Factory Method para retornar um objeto com algum tipo ProdutoConcreto CriadorConcreto Faz override do Factory Method para retornar uma instância de ProdutoConcreto 8
9 Colaborações Criador depende de suas subclasses para definir o Factory Method para que ele retorne uma instância do ProdutoConcreto apropriado 9
10 Conseqüências Factory Method elimina a necessidade de colocar classes específicas da aplicação no código O código só lida com o TIPO Produto O código pode funcionar com qualquer classe ProdutoConcreto Provê ganchos para subclasses Criar objetos dentro de uma classe com um Factory Method é sempre mais flexível do que criar objetos diretamente O Factory Method provê um gancho para que subclasses forneçam uma versão estendida de um objeto 10
11 Exemplo 11
12 Estrutura Genérica 12
13 Exercício Deseja-se criar uma Casa que possua Salas, Quartos, Paredes e Portas, que podem ser construídas em Aço, Vidro ou Madeira. Casa de Aço possui Salas, Quartos, Paredes e Portas de Aço. O projeto inicial da Casa deve ter duas Salas e dois Quartos, com paredes com e sem porta, como apresenta a Figura
14 Exercício Embora simplório, mas didático, o projeto em UML será o seguinte: PortaAB aberta : boolean nomeclasse : Logical View::java::lang::String abrir() fechar() estaaberta() entrar() ParedeAB nomeclasse : Logical View::java::lang::String ParedeAB() ParedeAB() entrar() #porta paredenorte -paredeoeste -paredeleste -paredesul -paredenorte -paredeoeste -paredeleste -paredesul QuartoAB nomeclasse : Logical View::java::lang::String SalaAB nomeclasse : Logical View::java::lang::String entrar() setparedenorte() setparedesul() setparedeleste() setparedeoeste() -quarto1 -quarto2 Casa Casa() entrar() setparedenorte() setparedesul() setparedeleste() setparedeoeste() -sala1 -sala2 14
15 Exercício Construir Casa de Madeira, de Vidro e de Aço com a estrutura da Figura 01 15
16 public class CasaMadeira { /* Atributos da Casa */ private QuartoAB quarto1, quarto2; private SalaAB sala1, sala2; /* O construtor CasaMadeira é responsável por determinar a estrutura da Casa e os * Objetos Concretos (de Madeira) a usar em sua construção. Note que Estrutura e * Objeto Concreto da construção estão Acoplados. */ public CasaMadeira() { PortaAB porta = new PortaMadeira(); ParedeAB parede = new ParedeMadeira(porta); sala1 = new SalaMadeira(); sala2 = new SalaMadeira(); quarto1 = new QuartoMadeira(); quarto2 = new QuartoMadeira(); sala1.setparedesul(parede); sala2.setparedenorte(parede); sala1.setparedenorte(new ParedeMadeira()); sala1.setparedeoeste(new ParedeMadeira()); O construtor CasaMadeira() determina TODO objeto concreto a usar através de NEW. Ou seja, todos os objetos concretos são de madeira.. } 16 } porta = new PortaMadeira(); parede = new ParedeMadeira(porta); sala2.setparedeoeste(parede); sala2.setparedesul(new ParedeMadeira()); porta = new PortaMadeira();...
17 Exercício Vale ressaltar que toda variável definida em CasaMadeira() é definida pelo TIPO ABSTRATO, não por um TIPO CONCRETO. Isso permite variar, no futuro, o tipo concreto a usar. Problemas com a solução: Deseja-se construir uma casa de Vidro com a mesma estrutura da Figura 01. Questão: O que será reusado do código da Casa de Madeira? Vamos à solução! 17
18 public class CasaMadeira { /* Atributos da Casa */ private QuartoAB quarto1, quarto2; private SalaAB sala1, sala2; public CasaMadeira() { PortaAB porta = new PortaMadeira(); ParedeAB parede = new ParedeMadeira(porta); sala1 = new SalaMadeira(); sala2 = new SalaMadeira(); quarto1 = new QuartoMadeira(); quarto2 = new QuartoMadeira(); sala1.setparedesul(parede); sala2.setparedenorte(parede); sala1.setparedenorte(new ParedeMadeira()); sala1.setparedeoeste(new ParedeMadeira()); porta = new PortaMadeira(); parede = new ParedeMadeira(porta); public class CasaVidro { /* Atributos da Casa */ private QuartoAB quarto1, quarto2; private SalaAB sala1, sala2; public CasaVidro() { PortaAB porta = new PortaVidro(); ParedeAB parede = new ParedeVidro (porta); sala1 = new SalaVidro(); sala2 = new SalaVidro(); quarto1 = new QuartoVidro(); quarto2 = new QuartoVidro(); sala1.setparedesul(parede); sala2.setparedenorte(parede); sala1.setparedenorte(new ParedeVidro()); sala1.setparedeoeste(new ParedeVidro()); porta = new PortaVidro(); parede = new ParedeVidro(porta); } 18 sala2.setparedeoeste(parede); sala2.setparedesul(new ParedeMadeira()); porta = new PortaMadeira();... } sala2.setparedeoeste(parede); sala2.setparedesul(new ParedeVidro()); porta = new PortaVidro();... } }
19 Exercício Deseja-se, agora, construir uma casa de Aço com a mesma estrutura da Figura 01. Questão: O que será reusado da Casa de Madeira ou Vidro? Vamos à solução (Eclipse) Problemas 1. Se a estrutura da Casa mudar, quantas classes temos de mudar? Resp: Mudar as três. 2. Se quisermos construir Casas de Aço, Madeira e Vidro com um quarto e uma sala, ou seja, uma nova estrutura, quantas classes novas necessitamos? Resp: Três (uma de Madeira, uma de Vidro e uma de Aço). Qual a solução a esses problemas? 19
20 Exercício Por que a solução está acoplada? Resp: Define-se a estrutura e a classe concreta do objeto concreto a usar através de NEW. Como deixar que em tempo de execução o objeto concreto seja determinado? Resp: usando métodos de criação. Ex. Usar TipoXAbstrato objetox = criaobjetox(); criaobjetox cria um objetox e retorna pelo TIPO. public TipoXAbstrato criaobjetox() {...} 20
21 Exercício Vamos para a solução desacoplada: Casa2S2Q - cria uma casa com duas Salas e Dois Quartos. Define a Estrutura sem determinar o objeto concreto. Casa2S2Q define a estrutura da casa. São os factory methods que vão determinar, nas subclasses de Casa2S2Q, via override, que objeto concreto criar. Vamos criar uma subclasse de Casa2S2Q para determinar os objetos concretos. Vamos criar uma casa de Madeira. Casa2S2QMadeira especializa Casa2S2Q e determina que os objetos concretos criados nos factory methods são de madeira. Vamos criar uma casa de Madeira com porta de Madeira Ornamentada. Casa2S2QMadeiraOrnamentada especializa Casa2S2QMadeira e determina que a porta é Ornamentada e os objetos concretos criados nos factory methods são de madeira, herdando de Casa2S2QMadeira. 21
22 Exercício Novas Questões 1.Se a estrutura da Casa mudar, quantas classes temos de mudar? Resp: Mudar somente uma, Casa2S2Q. 2. Se quisermos construir Casas com um quarto e uma sala, quantas classes necessitamos? Resp: Cinco (uma para construir a estrutura, uma subclasse de Madeira, uma subclasse de MadeiraOrnamentada, uma subclasse de Vidro e uma subclasse de Aço). Desafio: Construir Casas com um Quarto e uma Sala já usando o padrão Casa1S1Q no Eclipse 22
23 Exercício Vamos construir Casa de um Quarto e uma Sala de Madeira. Ao usar extends determinamos que estrutura vamos usar. Os Factory Methods determinam o que? Resp: Os objetos concretos a usar na construção da estrutura. Podemos notar que o código de Casa1S1QMadeira e Casa2S2QMadeira são idênticos. Podemos notar que o código de Casa1S1QAço e Casa2S2QAço são idênticos. 23
24 Exercício Note que para qualquer casa criada, com qualquer estrutura, suas subclasses serão iguais. Subclasses de Aço implementam os mesmos métodos, independendo da estrutura da Casa. Vamos tirar a responsabilidade de criar o objeto concreto da subclasse e colocar numa classe que é uma Fábrica de Objetos. Faremos Fábricas que constroem objetos de Aço para casas de aço, independendo de estrutura, Fábricas de Madeira, Vidro, etc. 24
Prototype, um Design Patterns de Criação
Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe
PADRÕES DE SOFTWARE. Jerffeson Teixeira de Souza, Ph.D. Tarciane de Castro Andrade. Grupo de Padrões de Software da UECE (GPS.
PADRÕES DE SOFTWARE 1 Jerffeson Teixeira de Souza, Ph.D. Tarciane de Castro Andrade Grupo de Padrões de Software da UECE (GPS.UECE) Julho-2009 CONTEÚDO Introdução aos Padrões de Software O quê são padrões?
Profº. Enrique Pimentel Leite de Oliveira
Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam
Programação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Herança Técnico em Informática, M.Sc. Herança 2 Herança Reutilização de código Exemplo Banco: Um banco oferece diversos serviços que podem ser contratados individualmente pelos clientes. Quando um serviço
INF011 Padrões de Projeto. 02 Creational Patterns
INF011 Padrões de Projeto 02 Creational Patterns Sandro Santos Andrade [email protected] Instituto Federal de Educação, Ciência e Tecnologia da Bahia Departamento de Tecnologia Eletro-Eletrônica
Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming
Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados
Especificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem
Padrões de Projeto. Singleton
Padrões de Projeto Padrões de Criação Singleton Singleton Assegura que uma classe tenha apenas uma instância e provê um ponto de acesso global a ela 2 Livro Texto: Design Pattern - Elements 1 Motivação
Disciplina Técnicas de Modelagem
T É C N I C A 3 MODELAGEM CONCEITUAL GENERALIZAÇÃO/ESPECIALIZAÇÃO, AGREGAÇÃO E COMPOSIÇÃO Generalização/Especialização Herança é o termo em orientação a objetos que se refere à criação de novas classes
Módulo 07 Características Avançadas de Classes
Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos
Figura 1. A Classe Java
Conexã o com MySQL Connection Factory Para criar as conexões com o banco de dados será utilizado um padrão chamado Factory, onde através dele se terá uma única classe que proverá uma fábrica de conexão
Técnicas de Programação II
Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.
EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS
Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor
Abstract 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
Programação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Classes Abstratas Técnico em Informática, M.Sc. Classes Abstratas 2 Classes Abstratas Abstração Devemos considerar as qualidades e comportamentos independentes dos objetos a que pertencem, isolamos seus
Padrão Básico de Projeto: Interfaces e Polimorfismo
Padrão Básico de Projeto: Interfaces e Polimorfismo Herança de implementação versus herança de interface Há uma diferença grande entre uma classe e seu tipo A classe define ambos um tipo e uma implementação
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Programação Orientada a Objetos em Java. Herança
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados
Programação com Objectos. Processamento de Dados I. 4. Classes Abstractas
Programação com Objectos Processamento de Dados I 4. Classes Abstractas 1 Conceito de classe abstracta Declaração de uma classe abstracta Implicações e características das classes abstractas Utilização
Orientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP O PHP através da versão 5, veio desenvolvido com suporte a programação orientada a objetos. O que significa isso? Que a partir da versão 5 é possível criar bibliotecas
Classes Abstratas e Interfaces
Java Básico Classes Abstratas e Interfaces Marco Antonio, Arquiteto de Software TJDF [email protected] Novembro/2005 Classe abstrata Recurso avançado da OO Não pode ser instanciada Deve ser instanciada
PADRÕES DE PROJETO. Prof.: Jean Carlo Mendes [email protected] http://www.jeancarlomendes.com.br
PADRÕES DE PROJETO Prof.: Jean Carlo Mendes [email protected] http://www.jeancarlomendes.com.br Implementação Padrões Factory Vamos utilizar o exemplo do livro Head First! Design Patterns e implementá-lo
Tópicos em Engenharia de Computação
Tópicos em Engenharia de Computação Introdução / Revisão UML e POO (JAVA) Prof. Ivan Prof. Zagari UML Linguagem Unificada. Não é metodologia, processo ou método. Versão atual 2.0 3 categorias de Diagramas
ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Programas eram lineares e com poucos módulos (Programação estruturada) Aumento da complexidade dos sistemas e difícil reusabilidade dos mesmos
OO -Objetos, classes, atributos, métodos, estado, comportamento e identidade (Slide) Prof. Bruno Gomes [email protected] Programação Orientada a Objetos Introdução Programas eram lineares e com poucos
Padrão Básico de Projeto: Herança versus Composição
Padrão Básico de Projeto: Herança versus Composição Composição e Herança Composição e herança são dois mecanismos para reutilizar funcionalidade Alguns anos atrás (e na cabeça de alguns programadores ainda!),
Programação Orientada a Objetos (DPADF 0063)
Programação Orientada a Objetos (DPADF 0063) Aula 6 Polimorfismo Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof.
ENGENHARIA DA COMPUTAÇÃO
ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 2 Prof. Msc. Ricardo Antonello ABORDAGEM ER A primeira etapa do projeto de um banco de dados é a construção de um modelo conceitual ou modelagem conceitual.
Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos
TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br [email protected]
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. [email protected] ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes
Decorator Pattern. SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br. Junho de 2008. Departamento de Informática / UFMA
Decorator Pattern SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Revisando os conceitos Herança é poderosa mas não é flexível Comportamento
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Disciplina: Unidade III: Prof.: E-mail: Período:
Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: [email protected] Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto
Pasteur Ottoni de Miranda Junior. Alguns Padrões de Projeto Gamma
Pasteur Ottoni de Miranda Junior Alguns Padrões de Projeto Gamma Padrões Gamma de Projeto(ou Gang-of-Four, gof) Os padrões gof foram publicados por Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides
Curso - 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 [email protected] http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java: Graduação
AULA 4 VISÃO BÁSICA DE CLASSES EM PHP
AULA 4 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.
Orientação a Objetos
Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.
Universidade Federal de Uberlândia Faculdade de Computação Prof. Fabiano Azevedo Dorça Programação Orientada a Objetos II. Padrões de Projeto
Universidade Federal de Uberlândia Faculdade de Computação Prof. Fabiano Azevedo Dorça Programação Orientada a Objetos II Padrões de Projeto Padrão Decorator (Decorador) Adiciona responsabilidades de forma
Construção de novas Classes em Java. Classes Atributos Métodos Herança...
Construção de novas Classes em Java Classes Atributos Métodos Herança... 1 Exemplo Representação em UML Java (Unified Modeling Language) Stack items : Vector Stack( ) push( ) pop( ) isempty( ) finalize(
ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
UML - Unified Modeling Language
UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril
Material de Apoio 5. int getres() { return res; O que estas classes possuem em comum? 1) 2) 3)
pg. 1/6 Material de Apoio 5 Herança Observe o código das classes Fatorial e Fibonacci apresentados abaixo. class Fatorial { class Fibonacci { private int n, res; private int n, res; public Fatorial( int
Criar alertas de suprimentos e serviço
Criar alertas de suprimentos e serviço Para criar alertas de suprimentos e ser avisado quando o toner está próximo de acabar ou problemas com os dispositivos, sabendo antecipadamente o código de erro que
Análise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na
BANCO DE DADOS I AULA 3. Willamys Araújo
BANCO DE DADOS I AULA 3 Willamys Araújo Modelo Conceitual Descreve quais dados serão armazenados no banco de dados as relações que existem entre eles. Independe do SGBD e da abordagem do banco de dados
Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;
um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,
Introdução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Java 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
UML: Diagrama de Casos de Uso, Diagrama de Classes
UML: Diagrama de Casos de Uso, Diagrama de Classes Diagrama de Casos de Uso O modelo de casos de uso visa responder a pergunta: Que usos (funcionalidades) o sistema terá? ou Para que aplicações o sistema
Caso já seja usuário do SCAW siga as instruções a partir da página X.
Caso já seja usuário do SCAW siga as instruções a partir da página X. Para iniciar o sistema dê um duplo clique no ícone, que se encontra na área de trabalho. 1 Login do sistema. Esta é a tela de login
Laboratório de ENGSOF Estudo de Caso. Prof. André Pereira, MSC, PMP
Laboratório de ENGSOF Estudo de Caso Aula de Hoje: Desenvolver um sistema UML inteiro: Aplicação Banco Online. Nosso Estudo de Caso! RSA V7.5 O que será feito para o projeto? 1) Criando um Projeto UML:
Máscaras de sub-rede. Fórmula
Máscaras de sub-rede As identificações de rede e de host em um endereço IP são diferenciadas pelo uso de uma máscara de sub-rede. Cada máscara de sub-rede é um número de 32 bits que usa grupos de bits
Herança. Alberto Costa Neto DComp - UFS
Herança Alberto Costa Neto DComp - UFS 1 Motivação Vimos como se faz encapsulamento e a importância de fazê-lo... Contudo, também é possível fazer encapsulamento em algumas linguagens não OO O que mais
Programação por Objectos. Java
Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:
Reuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Orientação a Objetos com Java
Orientação a Objetos com Java Julio Cesar Nardi [email protected] 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;
UML Aspectos de projetos em Diagramas de classes
UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada
Relatório do GPES. Arquitetura Geral do Framework
Relatório do GPES UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Relatório referente ao desenvolvimento da arquitetura geral do framework de preço de venda. Realizado no período de 29 de junho de 2010 a 30
Rock In Rio - Lisboa
Curso de Engenharia Informática Industrial Rock In Rio - Lisboa Elaborado por: Ano Lectivo: 2004/05 Tiago Costa N.º 4917 Turma: C Gustavo Graça Patrício N.º 4757 Turma: C Docente: Professora Maria Estalagem
Sumário. Uma visão mais clara da UML
Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da
Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.
Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.x = x; this.y = y; public String tostring(){ return "(" + x + "," +
DESENVOLVIMENTO DE SOFTWARE. Introdução ao Visual Studio VB.Net. Programação Estruturada. Prof. Celso Candido ADS / REDES / ENGENHARIA
Introdução ao Visual Studio VB.Net Programação Estruturada 1 Nesse momento inicial não iremos programar em VB.Net, usando o Visual Studio, mas conhecer alguns comandos e variáveis usadas em uma linguagem
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente
DEFINIÇÃO DE MÉTODOS
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 2 DEFINIÇÃO DE MÉTODOS Todo o processamento que um programa Java faz está definido dentro dos
Feature-Driven Development
FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por
Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo
MANUAL DE UTILIZAÇÃO
MANUAL DE UTILIZAÇÃO Módulo de operação Ativo Bem vindo à Vorage CRM! Nas próximas paginas apresentaremos o funcionamento da plataforma e ensinaremos como iniciar uma operação básica através do nosso sistema,
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. [email protected] ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando
Base de Dados para Administrações de Condomínios
Base de Dados para Administrações de Condomínios José Pedro Gaiolas de Sousa Pinto: [email protected] Marco António Sousa Nunes Fernandes Silva: [email protected] Pedro Miguel Rosário Alves: [email protected]
Programação Orientada a Objeto
Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso
Programação Orientada a Objetos. Encapsulamento
Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências
*%# ## (+& ', # )&* ## - () ' #.# %&/.# ' '# () 0 *&# */ #,$1$ # * * ()% " ## # * 23 (), ) 45&26, ' 1#45 6'#&# &7 ; '# *23) 8=9 =()/ / =:7
A-PDF MERGER DEMO! "# $#%&'&()& '&## *%# ## (+& ', # )&* ## - () ' #.# %&/.# ' '# () 0 *&# */ #,$1$ # * * ()% " ## # * 23 (), ) 45&26, ' 1#45 *) 6'#&# &7 &8 ()9*':7 6'& &*&$8 ; '# *23) #* $45
Planilha Eletrônica Excel
COLÉGIO LA SALLE CANOAS Técnico em Informática Planilha Eletrônica Excel Excel Prof. Valter N. Silva Colégio La Salle Canoas Página 2 1. NOÇÕES BÁSICAS O Microsoft Excel 7.0 é um programa de planilha eletrônica,
Programação Concorrente
+ XV Jornada de Cursos CITi Aula 2 Programação Concorrente Benito Fernandes Fernando Castor João Paulo Oliveira Weslley Torres + Agenda Conceitos básicos de Threads em Java Benefícios de Thread Estados,Métodos,
Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo
Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: ([email protected]) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de
SisResEv Sistema de Reserva de Salas para Eventos. Instruções de uso
UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIAS HUMANAS - SCH SisResEv Sistema de Reserva de Salas para Eventos Instruções de uso O SisResEv é uma ferramenta online de gerenciamento de reserva de salas
LINGUAGEM DE PROGRAMAÇÃO WEB
LINGUAGEM DE PROGRAMAÇÃO WEB GABRIELA TREVISAN Aula 4 Imagine a seguinte situação: Precisamos trafegar valores de uma página PHP para outra, porém não temos formulários entre essas páginas. Como fazer
Implementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
A apresentação através de fluxos lógicos consegue mostrar mal entendidos e pontos que são controversos.
Módulo 5 Análise Estruturada As dificuldades que são causadas por problemas de comunicação, mudanças de requisitos e técnicas inadequadas de avaliação, tornam a análise estruturada uma fase critica no
1 Natuur Online Cadastre-se Nome, Login E-mail Cadastrar.
1 Essa é a tela de acesso do Natuur Online, clique aqui para acessar o site e siga o passo-apasso abaixo. Se esse é o seu primeiro acesso, clique em Cadastre-se. 2 - Preencha os dados solicitados com Nome,
POO Programação Orientada a Objetos. Classes em Java
+ POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos
Desenvolvimento de Aplicações para Internet Aula 7
Desenvolvimento de Aplicações para Internet Aula 7 Celso Olivete Júnior [email protected] Classe e tipos de dados Classe Conjunto de objetos semelhantes, isto é, com a mesma estrutura (atributos) e
Relacionamentos entre classes
Relacionamentos entre classes Relacionamentos entre classes Relacionamentos estruturais entre classes Precisam ser criteriosamente definidos durante o projeto do software São obtidos a partir da análise
Manual Sistema Mó vel Msys Cómercial
Manual Sistema Mó vel Msys Cómercial Maravilha, 2014. 1 Sumário 1. REQUISITOS MÍNIMOS... 3 2. PRINCIPAIS TELAS E FUNCIONALIDADES... 4 2.1.1. Tela de acesso ao sistema.... 4 2.1.2. Tela Principal do Sistema....
Configurações de Templates no SolidWorks 2011
Configurações de Templates no SolidWorks 2011 Esse tutorial tem como intuito a criação de propriedades personalizadas, a criação destas propriedades é uma forma de automatizar o preenchimentos de informações
Programação Orientada a Objetos em java. Polimorfismo
Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa
Análise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
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
1. Herança. Sobrescrevem métodos - redefinem métodos herdados. Subclasse herda de uma superclasse
1. Herança Herança - forma de reutilização de software Novas classes são criadas a partir de classes já existentes Absorvem atributos e comportamentos, e incluem os seus próprios Sobrescrevem métodos -
Prof. Rafael Gross. [email protected]
Prof. Rafael Gross [email protected] Todo protocolo define um tipo de endereçamento para identificar o computador e a rede. O IP tem um endereço de 32 bits, este endereço traz o ID (identificador)
Primeiramente, vamos saber o que foi utilizado para a confecção do elevador, vamos listar as coisas utilizadas mais importantes:
Primeiramente, vamos saber o que foi utilizado para sua confecção, vamos listar as coisas mais importantes que foram utilizadas: Primeiramente, vamos saber o que foi utilizado para a confecção do elevador,
Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)
Prova de Java 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos) O programa consiste em uma aplicação que simula o comportamento de dois
Sistema de Avaliação. Manual do Usuário
Sistema de Avaliação Manual do Usuário Versão 2011 / 2012 1. Apresentação Neste Manual do Sistema de Avaliação estão contidas as instruções para a realização da Avaliação de Desempenho dos empregados da
