Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados.

Slides:



Advertisements
Apresentações semelhantes
Classes C++ Class nome da classe { private: membros privados
Advertisements

Projeto de Sistemas de Software Trabalho de Padrões de Projeto
Padrão de Projeto Iterator
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Erros A Evitar Redundância de Programação public void insere( Priorizavel obj ) throws listaVaziaException; Lançamento de exceções.
Orientação a Objetos Classes
Classes & Objectos em JAVA5
Métodos Programação II 1 Métodos de Programação II (Mestrado Integrado em Engenharia de Comunicações) 1º Ano, 2º Semestre Elementos de Classe, class wrappers.
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
Classes Revisando: –Forma de implementação de estruturas específicas –Atributos (grupos de dados) –Métodos (conjuntos de procedimentos)
PLC – Introdução a POO Java
Entendendo as definições de classe
Introdução à Programação Orientada a Objetos com Java
Programa Expresso de Capacitação Módulo J2ME Aula 5 – Record Management System.
© Sérgio Soares1 Integrando Java com O2 Sérgio Soares GENTe.
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Classes Abstratas e Interfaces.
Os métodos equals() e hashCode()
Orientação a Objetos e Java Graduação em Ciência da Computação
Paulo Borba Centro de Informática Universidade Federal de Pernambuco
UML e Java, Introdução AB,20001 Diagrama de Classes UML e JAVA Problema Existem diversos tipos de contas bancárias. Todas as contas têm um atributo saldo.
The Factory Esclarecendo a arquitetura utilizada no projeto Piloto Autor: Wabber Filho.
Linguagem II Exceções.
Wagner Santos C. de Jesus
Universidade Católica de Angola Prática de laboratório Fundamentos de Programação II Frei Joaquim José Hangalo.
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Projetar Arquitetura. Copyright © 2006 Qualiti. Todos os direitos reservados. Qualiti Software Processes Análise e Projeto OO com UML e Padrões| 2 Objetivos.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota (com material da Qualiti Software Process)
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Classes Abstratas e Interface
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Herança e Arquitetura em camadas
Abr-17 Projetar Arquitetura Projetar caso de uso.
Aula Prática 5 05/05/2010. //Estrutura do método public int subtrair (int a, int b){ //Calcule a operação desejada. int resultado = a – b; //Retorne o.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Lucas Figueiredo Marcelo Pereira Ranieri Valença Rosana Matos Valmir Sena.
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Grupo: Arthur Cireno Rizzo (acr2) Eduardo Menezes Pires (emp) Paulo de Barros e Silva Filho (pbsf) Rafael Loureiro de Carvalho (rlc) Romero Teixeira Gonçalves.
Copyright 2000, Departamento de Informática, UFPE. Todos os direitos reservados sob a legislação em vigor. Orientação a Objetos e Java.
Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados.
Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados.
Engenharia de Software Alexandre Vasconcelos, André Santos, Augusto Sampaio, Hermano Moura, Paulo Borba © Centro de Informática Universidade Federal de.
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Exceções.
Revisão Mini-Prova 1 Monitoria IP/CC (~if669).
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Orientação a Objetos e Java Alexandre Mota  Centro de Informática, UFPE.
Aprendendo como funciona o NHibernate Elvis Medeiros Programador .NET
Associação. 2 Desafio – Aula class Aluno { 2. private String nome; 3. private float nota; 4. public Aluno(String nome, float nota){ 5. this.nome.
REFATORAÇÃO JOÃO LACERDA DJALMA LIMA. MARTIN FOWLER É um autor conhecido na área de arquitetura de software, especializado em análise orientada a objetos,
Implementação Orientada a Objetos – Aula 08 Herança, sobrescrita de métodos e polimorfismo Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 04 Métodos, parâmetros e retorno Prof. Danielle Martin/Marcia Bissaco Universidade de Mogi das Cruzes
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Projeto de Arquitetura de Software
Linguagem Java Programação II.
Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados.
Minicurso Java Básico Ruddá Beltrão | Cristian Costa.
Noções de projeto orientado a objetos - camadas Prof. Gustavo Wagner (alterações) Prof. Tiago Massoni (Slides originais) Desenvolvimento de Sistemas FATEC-PB.
Polimorfismo com Interfaces Pacotes em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB.
Strings e Arrays Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de Informática,
IDENTIFICAÇÃO DOS RELACIONAMENTOS Nesta atividade devem ser definidos os relacionamentos entre as classes Podem ser representados pela: – associação, –
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Herança e Polimorfismo Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de Informática,
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
Tratamento de exceções em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de.
Programação de Computadores II
Transcrição da apresentação:

Vendo o código como um bolo... com várias camadas! Interface com o usuário (GUI) Comunicação Negócio Dados

Fachada servicos() Coleção de Negócio servicosEspecificos() 1..* Coleção de dados Básica de negócio getDado() 0..* inserir() remover() atualizar() procurar() existe() Negócio Dados GUI 1..* Arquitetura de software

Classes Básicas de Negócio public class Conta { private double saldo; private String numero; private Cliente correntista;... public void creditar(double valor) { saldo = saldo + valor; } Cliente, Livro, Animal, Veiculo

public class RepositorioContasArray { public void inserir(Conta conta) {} public void atualizar(Conta conta){} public void remover(String numero){} public Conta procurar(String numero) {} public RepositorioContasArray procurar(Conta c) {} public boolean existe(String numero) {} public Conta[] getIterator() {} } Classes Coleção de Dados - assinatura RepositorioContasArquivo, RepositorioContasLista RepositorioContasBDR, RepositorioContasBDOO opcionais

Classes Coleção de Dados public class RepositorioContasArray { private Conta[] contas; private int indice; public RepositorioContasArray(int tam) { contas = new Conta[tam];... } public void inserir(Conta conta) { contas[indice] = conta; indice = indice + 1; }... }

Classes Coleção de Negócio public class CadastroContas { private RepositorioContasArray contas; public CadastroContas(RepositorioContasArray rep) { contas = rep; } public void cadastrar(Conta conta) { if (!contas.existe(conta.getNumero())) { contas.inserir(conta); } else... }... } CadastroClientes, CadastroLivros, CadastroAnimais, CadastroVeiculos

Classe Fachada public class Banco { private CadastroContas contas; private CadastroClientes clientes;... public void cadastrar(Conta conta) { Cliente c = conta.getCorrentista(); if (clientes.existe(c.getCodigo()) { contas.cadastrar(conta); } else... } Livraria, Zoo, Locadora

Método match public class Conta {... public boolean match(Conta conta) { Correntista corr = conta.getCorrentista(); boolean resp = false; if (numero != null && correntista != null) resp = numero.equals(conta.getNumero()) && correntista.match(corr); else if (numero != null) resp = numero.equals(conta.getNumero()); else if (correntista != null) resp = correntista.match(corr); return resp; } Usado pelo método procurar(Conta) do repositório