Relações entre Classes e Persistência
|
|
|
- Leila Sequeira Castelo
- 9 Há anos
- Visualizações:
Transcrição
1 Relações entre Classes e Persistência Prof. Cesar Augusto Tacla 1 Diagrama de classes Estrutura do sistema (classes) Representação estática da colaboração (relações) Relações associação (mais comum) agregação (um tipo de associação), generalização/especialização dependência 2 1
2 Associação Nome da associação Professor leciona Disciplina Objetos de uma classe se associam a objetos de outra 3 Multiplicidade das relações Repr Significado 1 Exatamente uma 0.. * * Zero ou mais 1.. * Uma ou mais 0..1 Zero ou uma 5..8 Faixa específica (5, 6, 7, or 8) 4..7,9 Combinação (4, 5, 6, 7, or 9) 4 2
3 Multiplicidade: exemplo Professor 1 leciona 1..* Disciplina João Matemática José Física quim Maria História 5 Multiplicidade: exercício Qual a representação em UML para o caso seguinte? Pessoa Carro João FIAT AXY8704 José FUSCA BHY9910 Maria CORCEL ATT
4 Multiplicidade: exemplo Qual a representação em UML para o caso seguinte? Faça um exemplo com instâncias que ilustre a representação. Uma pessoa participa de no máximo 3 projetos, mas pode ser que não participe de nenhum. Um projeto pode ter vários participantes e somente começa a existir quando o primeiro participante é designado. 7 Navegabilidade: unidirecional Não navegável navegável Professor leciona Disciplina 8 4
5 Navegabilidade: bidirecional navegável navegável Professor leciona Disciplina Direção de leitura 9 Navegabilidade: não especificada Não especificada Não especificada Professor leciona Disciplina 10 5
6 Papéis Empresa Trabalha ou emprega? Pessoa Qual a interpretação desejada? Trabalha pessoa trabalha para Empresa ou empresa trabalha (presta um serviço) para Pessoa; Emprega (contrata) empresa emprega Pessoa ou pessoa emprega (contrata) Empresa 11 Papéis Empresa empregador empregado Pessoa Papel de empresa Papel de pessoa Uso de papéis pode suprimir ambigüidades 12 6
7 Associações reflexiva Objetos de uma classe se relacionam com objetos da mesma classe 13 Associação reflexiva: exemplo 1 Pessoa filho 0..* pai 0..1 Filho(a) Pessoas Mário José Maria Carlos Mário é pai de Maria pai Quem é o pai de Mário? 14 7
8 Associação reflexiva: exemplo 2 Empregado 0..* subordinado gerente 1 subordinado João Maria José Mário Gerente João é gerente de Maria e José José é gerente de Mário Quem é gerente de João? 15 Classes Associativas Aluno -nome: String -matricula: int 1..* 1..* Disciplina -nome: String -código: String -cargahoraria: int Inscrição -semestre: int -ano:int -nota:float Quando uma relação associativa possui atributos próprios pode ser transformada em classe. 16 8
9 Classes associativas: características Normalmente em relações de multiplicidade *:* Não é nomeada: somente a classe associativa Classes associativas podem estar relacionadas a outras classes. 17 Exercício 1 Em relação aos relacionamentos abaixo responda: 1. Qual a representação mais correta a primeira ou a segunda relação? Por quê? 2. O que é preciso mudar na segunda relação para representar que uma casa possui diversos proprietários ao longo do tempo? class Casa Casa é propriedade Pessoa 0..* 1 Casa +propriedade +proprietário Pessoa 1..* 0..* Apostila UML, pg. 63, 18 n. 1 9
10 Exercício 2 Qual a diferença de interpretação entre as duas representações? Qual seria mais indicada para um tribunal regional eleitoral (identidade do eleitor não deve ser conhecida)? class eleições eleitor 0..* eleitor 0..* vota > Pessoa vota > Pessoa candidatopresidente 0..1 candidatopresidente 0..1 Apostila UML, pg. 63, n Exercício 4: classes associativas Modele num diagrama de classes: Uma companhia aérea oferece vôos Número do vôo Data e horário de partida Duração Passageiros tem programa de fidelidade Número do cartão de fidelidade Nome Sobrenome Passageiros recebem milhas por vôo em função da sua duração 20 10
11 Solução exercício Vôo -num: int -data: Date -duração: int 0..* 0..* Passageiro -nome: String -sobrenome: String -numcartao: int CréditoMilha quantidade: int 21 Levantamento das associações Examinar Regras do negócio, Modelo do domínio Requisitos funcionais Casos de uso Diagramas de interação 22 11
12 Levantamento de associações Exemplo: regras do negócio de uma biblioteca um aluno pode emprestar no máximo quatro obras Aluno 0..1 Empresta 0..4 Livro 23 Levantamento das associações sd análise casos de uso :meteorologista :IUConv ersao :CtrlConv ersao :Historico :Conv ersaocf solicitar valor Celsius valor Celsius? c c converter valor c guardar conversao mostrar valor convertido valor Fahrenheit valor Fahrenheit 24 12
13 Implementação de associações unidirecional 1:1 Professor 1 Leciona 1 Disciplina class Professor { private Disciplina disc = new Disciplina( FP2 ); // disciplina pode ser instanciado em outro local // outros atributos // métodos } E se fosse bidirecional? 25 Implementação bidirecional 1:1 1. class Professor { 2. private Disciplina disc; 3. public associar (Disciplina disc) { 4. this.disc = disc; 5. } 6. // métodos 7. } 8. class Disciplina { 9. private Professor prof; 10. public associar (Professor prof) { 11. this.prof = prof; 12. } 13. // métodos 14. } 26 13
14 Unidirecional 0..1 : 0..5 class Professor Professor leciona Disciplina Unidirecional 0..1 : 0..5 Implementação 1 1.class Professor { 2. private Disciplina[] disciplinas = { 3. new Disciplina(), 4. new Disciplina(), 5. new Disciplina(), 6. new Disciplina(), 7. New Disciplina(), 8. }; 9.} A instanciação pode ocorrer em outros pontos da classe class Professor Professor leciona Disciplina
15 Unidirecional 0..1 : 0..5 Implementação 2 1.class Professor { 2. private Disciplina[] disciplinas; public void associar(disciplina[] disc) { if (disc.length > 5) 7. return; 8. disciplinas = disc; 9. } 10.} class Professor Professor 0..1 leciona 0..5 Disciplina 29 Multiplicidade 1:* class classes Professor Disciplina 1 * 1.class Professor { 2. private Vector<Disciplina> disciplinas = 3. new Vector<Disciplina>(5, 3); 4. public void adicionardisciplinas(disciplina[] disc){ 5. for (int i=0; i < disc.length; i++) 6. disciplinas.add(disc[i]); } 9.} 30 15
16 Bidirecional multiplicidade *:* class muitos para muitos Projeto +emprega +participa Pessoa 0..* 0..* 1.public class Projeto { 2. public Vector<Pessoa> emprega; } 5.public class Pessoa { 6. public Vector<Projeto> participa; } 31 Associações reflexivas class associação reflexiv a Professor +temcomoprereq +temprerequisito 0..* Disciplina +ehprereqde +prerequisito 0..* 1 * 1.public class Disciplina { 2. public Vector<Disciplina> temcomoprereq; 3. public Vector<Disciplina> ehprereqde; } 32 16
17 Exercício Implementar as relações da transparência anterior de acordo com a grade do curso Disciplina Professor Tem pré-requisitos é pré-requisito de FP2 APOO ED FÍSICA TACLA FP1 APOO ED Solução JAssociaoReflexPrePosRequisitos 33 Classes Associativas Diagrama de classes na atividade de Análise class classe associativa Projeto +emprega +participa Pessoa 0..* 0..* Participacao - cargahoraria: int - dataentrada: Date - datasaida: Date Equivale à
18 Classes Associativas (2) Diagrama de classes na atividade de Projeto class classe associativa (proj) Projeto 1 possui Participacao participa - cargahoraria: int 0..* - dataentrada: Date 0..* 1 - datasaida: Date Pessoa Implementação >>>> 35 Classes Associativas (3) 1.public class Projeto { 2.public Vector<Participacao> m_participacao; } 5.public class Pessoa { 6. public Vector<Participacao> m_participacao; } 9.public class Participacao { 10. private int cargahoraria; 11. private Date dataentrada; 12. private Date datasaida; 13. public Projeto projeto;// se relação for bidirecional 14. Public Pessoa pessoa; // se relação for bidirecional } 36 18
19 AGREGAÇÃO Composição/pertinência associação Parte Todo Propagação class Classe Janela Exercício: desenhe uma instância possível da classe janela Botão ComboBox ScrollBar 37 Agregação: adornos class Classe Time Jogador * * Qual a interpretação? 38 19
20 Tipos de agregação class Classe Composição Janela Botão ComboBox ScrollBar Associação class Classe Time Jogador * * 39 Agregação por composição Relação forte Destruição do todo se propaga para as partes Tempo de vida do todo = das partes 40 20
21 Exemplo: agregação por composição Linha 1 2 Ponto class Linha { public String id; private Ponto pt1 = new Ponto(10, 20); private Ponto pt2 = new Ponto(15, 30); class Ponto { } } 41 Agregação por associação Relação mais fraca que anterior Tempos de vida diferentes 42 21
22 Agregação: diferença 43 Levantamento de agregações Decomposição dividir classe complexa Composição Coleção de objetos reunidos barra de rolagem + menu + text area = janela Partes comuns classes com subconjunto de atributos semelhantes 44 22
23 Exercício 1 Qual a diferença de interpretação entre os relacionamentos livro-sobrecapa e livro-páginas? Apostila UML, pg. 64, n Exercício 2 Todo aluno matriculado em trabalho de diplomação será orientado por um professor. Alguns professores orientam vários alunos e outros, nenhum. Qual dos diagramas melhor representa esta relação? Apostila UML, pg. 64, n
24 Agregação por composição class agregação por composição HistoricoPagsWeb URLVisitada 1 0..* - URL: String Implementação >>> 47 Agregação por composição (2) 1.class URLVisitada { 2. private String url; URLVisitada (String url) { 5. this.url = url; 6. } 7.} 8.class Historico { 9. // cria três objetos da classe URLVisitada 10. private URLVisitada[] historico = { // ou coleção 11. new URLVisitada(" 12. new URLVisitada(" 13. new URLVisitada(" 14. }; } Implementação >>> 48 24
25 Agregação por composição (3) 1.class Historico { 2. private class URLVisitada { 3. private String url; 4. private Date data; 5. private int freq; 6. URLVisitada (String umaurl) { 7. url = umaurl; 8. } } 11. private Vector<URLVisitada> historico = 12. new Vector<URLVisitada>(4, 2); } Classe aninhada como private, a URLVisitada só pode ser instanciada dentro do escopo do todo 49 Agregação por associação Idêntica à implementação de associação 50 25
26 GENERALIZAÇÃO Classes compartilham atributos e comportamentos Relação de generalização É um tipo de Herda atributos e métodos 51 GENERALIZAÇÃO Sobreposição do método calcularipva 52 26
27 Taxonomia: hierarquia de classes Atributos e operações comuns Atributos e operações específicas 53 Qualidade de uma hierarquia Estável: critérios de classificação não mudam ao longo do tempo. Extensível: é fácil incluir novas classes derivadas na hierarquia Dica: respeitar o princípio da substituição 54 27
28 Princípio da substituição Qualquer instância de uma classe derivada pode ser tratada como se fosse uma instância de uma classe base sem alterar a semântica de um programa escrito para a classe base. 55 Exemplo Círculo e polígonos podem ser tratados como FormaGeométrica 56 28
29 Exemplo: taxonomia mal feita Livro LivroEmprestado LivroDisponível Não construir hierarquias em função de estados das classes 57 Herança múltipla ObjetoVoador Animal Avião Helicóptero Pássaro 58 29
30 Dependência Variável local Parâmetro de operação (método) Instanciação Atributos indicam associação 59 Dependência: exemplos class Dependência ClasseA ClasseB + operacao(classec) : void «local» «parameter» «instantiate» ClasseC ClasseD 60 30
31 Exercício Desenhe o diagrama de classes para as relações das classes marcadas em vermelho public class Aluno { public Curso curso; public int CEP; } public void setcep(endereco end) { CEP = end.cep; } public int calcularidade() { // retorna idade em meses Date d = getcurrentdate();... } 61 Exercício (solução) Multiplicidade no lado aluno não foi colocada pois não temos informação indefinida - Aluno matriculado 1 Curso <<local>> <<parâmetro>> Date Endereço 62 31
32 Realização «interface» Serializable e» 1.public interface Serializable { } 1 4.public class Histórico implements Serializable { } «entity» Historico + adicionar(conversaocf) : void - writeobject() : void 63 Exercício (enunciado) Programa cliente para envio de s O programa deve permitir ao usuário: 1. enviar s a um ou mais destinatários selecionados de uma agenda composta por contatos no formato (nome, endereço ). A agenda pode ser definida no próprio código, mas deve ser mostrada para que o usuário possa selecionar os destinatários. 2. consultar todos os s enviados a um determinado destinatário. Ao clicar em uma entrada da agenda, o programa deve mostrar todos os s enviados ao destinatário selecionado sem ter que percorrer toda a lista de s enviados. Detalhes Um é composto pelos três campos a seguir: remetente, destinatários, assunto e corpo
33 Exercício (cont.) Para enviar s Utilizar a API JavaMail (há várias implementações desta API) Uma delas (e suas diferentes versões) são encontradas em Baixar o.zip Extrair o mail.jar Colocar na pasta de projeto No NetBeans, importar biblioteca alternativa ao JavaMail JAVARepositorio\JMailClient: solução que envia . Tem um frame, mas ainda não funciona. 65 Exercício (tarefas) Tarefa 1 No enunciado dado, marque todos os substantivos candidatos a classes (entregar o texto marcado) Refletir sobre quais classes são necessárias e como elas conversam para que o programa realize sua função. Construir um diagrama de classes em um editor qualquer de UML. Não esquecer dos relacionamentos, multiplicidade e nome nas associações 66 33
34 Exercício (instruções) Instruções gerais: Pode ser feito em <x> Valor <v> Data de entrega/apresentação: <dd/mm> Apresentar Enunciado com os substantivos candidatos a classes marcados (impresso) diagrama de classes preliminar (impresso) diagrama de classes final (impresso) código fonte e funcionamento (em sala) 67 Exercício (exemplo de envio) Ao enviar , o usuário seleciona os destinatários da agenda Agenda João Maria José [email protected] [email protected] [email protected] De: Destinatários: Assunto: nonono nono nono on João e José, Favor comparecer com urgência na sala B109. []s Tereza 68 34
35 Exercício (exemplo de consulta) Supor que o João foi selecionado na agenda. O programa mostra todos os s que lhe foram enviados (pode haver outros destinatários). Agenda João Maria José [email protected] [email protected] [email protected] s enviados ao João Destinatários data assunto João, José 14/4/2007 nono non onon ono João, Maria 14/4/2007 bla blalba 69 PERSISTÊNCIA Consiste em salvar os objetos de uma sessão para tê-los disponíveis nas sessões seguintes de uso do programa
36 FORMAS E PERSISTÊNCIA Banco de dados: relacional ou objetos Arquivo: vários formatos (txt); aqui nos interessa a forma serializable que permite salvar um objeto tal qual ele está na memória. 71 SERIALIZABLE Exemplo em JAVARepositorio\SerializableExemplo Observar Que os métodos writeobject e readobject são opcionais. É interessante utilizá-los quando quer-se modificar algo no objeto no momento da escrita ou da leitura (fugir dos defaults) Que é possível salvar mais de um objeto no mesmo arquivo
37 Exercício cliente (cont.) Tarefa 2 Implementar e testar o programa Persistir a agenda e as mensagens 73 37
Diagrama de Classes (Análise de casos de uso)
Diagrama de Classes (Análise de casos de uso) Prof. Cesar Augusto Tacla Diagrama de classes Estrutura do sistema (classes) Representação estática da colaboração (relações) Relações associação (mais comum)
Diagrama de Classes (Análise de casos de uso) Prof. Cesar Augusto Tacla
Diagrama de Classes (Análise de casos de uso) Prof. Cesar Augusto Tacla Diagrama de classes Estrutura do sistema (classes) Representação estática da colaboração (relações) Relações associação (mais comum)
ESTUDO DE CASO: CONVERSOR CELSIUS-FAHRENHEIT
PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ESTUDO DE CASO: CONVERSOR CELSIUS-FAHRENHEIT Cesar Augusto Tacla Departamento Acadêmico de Informática http://www.dainf.cefetpr.br/~tacla O uso e reprodução
Diagrama de Classes de Projeto
Plano Diagrama de Classes de Prof. Cesar Augusto Tala Posição no método APOO Diagrama de seqüênia (refinamento) Diagrama de lasse (refinamento) Visão geral do método Posição da atividade Análise de requisitos
POO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José [email protected] http://docente.ifsc.edu.br/mello/poo
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos [email protected] Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
PROGRAMAÇÃO ORIENTADA A
PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, MS M.Sc. [email protected] ROTEIRO 4. Técnicas de Orientação a Objetos Classes e objetos Herança Métodos Subscritos
UML LINGUAGEM DE MODELAGEM UNIFICADA Diagrama de Classes
UML LINGUAGEM DE MODELAGEM UNIFICADA Diagrama de Classes O diagrama de classe é a essência de qualquer modelagem orientada a objeto. Ele tem por objetivo descrever, segundo uma visão estática, o escopo
Programação Orientada a Objetos Relacionamentos entre classes
Programação Orientada a Objetos Relacionamentos entre classes Prof. Vicente Paulo de Camargo RELACIONAMENTO ENTRE CLASSES Interface agregação Dependencia composição generalização associação RELACIONAMENTO
Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42
Diagrama de Classes Régis Patrick Silva Simão Régis Simão Diagrama de Classes 1/42 Agenda Introdução Objetos Classes Atributos Operações & Métodos Relacionamentos Relacionamento: Associação Nome de Relacionamento
BANCO DE DADOS I. Prof. Luiz Antônio Vivacqua C. Meyer
BANCO DE DADOS I Prof. Luiz Antônio Vivacqua C. Meyer Projeto de Banco de Dados Etapas do Desenvolvimento de um Projeto de Sistemas: 1. Levantamento de Requisitos a. Requisitos Funcionais b. Requisitos
Diagramas de Classes. ESII Profª. Andressa Falcade URI Santiago
Diagramas de Classes Conceitos Básicos O caso de uso fornece uma perspectiva do sistema de um ponto de vista externo (do ator) Internamente os objetos colaboram para atender às funcionalidades do sistema
Diagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição
Diagrama de Classes Diagrama de Classes Classes Atributos Métodos Relacionamentos Associação Agregação Composição Generalização Dependência Realização Sobre Classes São o elemento mais importante de qualquer
Linguagem de Modelagem Unificada UML
Linguagem de Modelagem Unificada UML Parte 1 Rosemary Silveira Filgueiras Melo [email protected] 1 Tópicos abordados Paradigma Orientado a Objetos Linguagem UML e seus principais diagramas Diagramas
MODELAGEM DE SISTEMAS Unidade 4 Modelo de Classes de Projeto. Luiz Leão
Unidade 4 Modelo de Classes de Projeto Luiz Leão [email protected] http://www.luizleao.com Conteúdo Programático Definição da Visibilidade entre Objetos Adição de Operações às Classes de Projeto Adição
Modelagem Orientada a Objeto
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Modelagem Orientada a Objeto Engenharia de Software 2o. Semestre de
Requisitos de sistemas
Requisitos de sistemas Unidade III - Casos de Uso Identificação de casos de uso Conceitos de orientação a objetos Modelagem do diagrama de classes e casos de uso 1 Casos de uso CONCEITO Especifica o comportamento
12/03/16. Generalização. Associação. Agregação UML Relações. entre Classes. Composição. Prof.Dr. Enzo Seraphim. Dependência
12/03/16 Generalização Associação Agregação UML Relações Composição entre Classes Dependência Prof.Dr. Enzo Seraphim 12/03/16 Generalização Associação Agregação UML Relações Composição entre Classes Dependência
POO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José [email protected] http://docente.ifsc.edu.br/mello/poo
Linguagem de Programação. Diagrama de classes
Linguagem de Programação Diagrama de classes Joyce França Professora de Ciência da Computação - IFNMG 2 Agenda Diagrama de classes Herança Associação Agregação Exercícios 3 Diagrama de classes Mostra um
Análise de Sistemas 4º Bimestre (material 3)
Análise de Sistemas 4º Bimestre (material 3) Permite a visualização das classes que irão compor o sistema com seus respectivos atributos e métodos, bem como demonstrar como elas se relacionam, complementam
Unified Modeling Language (UML)
SCC0504 Programação Orientada a Objetos Unified Modeling Language (UML) Luiz Eduardo Virgilio da Silva ICMC, USP Material baseado nos slides dos professores: José Fernando Rodrigues Jr (ICMC/USP) 1 Sumário
Relacionamentos entre objetos
Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores t e sobrecarga Variáveis de classe e de instância Reinaldo Gomes [email protected] Objetos
Modelagem de Classes. Mestrado em Engenharia de Produção e Sistemas Computacionais. Profa. Adriana Pereira de Medeiros
Modelagem de Classes Mestrado em Engenharia de Produção e Sistemas Computacionais Profa. Adriana Pereira de Medeiros [email protected] Resumo Introdução Conceitos em Orientação a Objetos Diagrama
Herança. Herança. Herança. Herança. Herança. Programação Orientada a Objetos
e Ligação Dinâmica Programação Orientada a Objetos e Polimorfismo A é a contribuição original do paradigma de programação orientado a objetos Fundamentos chave do paradigma OO: Abstração de Dados A herança
Programação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc.
Orientação a Objetos Revisão Conceitos CLASSE CLASSIFICAÇÃO GENERALIZAÇÃO ESPECIALIZAÇÃO HERANÇA INTERFACES POLIMORFISMO SOBRECARGA ENCAPSULAMENTO ABSTRAÇÃO MODULARIZAÇÃO 9 CLASSE Classe é um agrupamento
MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.
MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES [email protected] Externamente ao sistema, os atores visualizam resultados de cálculos, relatórios produzidos, confirmações de requisições solicitadas,
Seções de aula (Seminários)
Seções de aula (Seminários) É possível criar uma aula com seções no Turnitin, caso seções de uma aula sejam ministradas por outros professores ou por professores assistentes. Uma aula magna de nível máximo
Trabalho Campeonato de Futebol Programação Orientada a Objetos (SCC204) Prof. Moacir Pereira Ponti Junior 26 de abril de 2011
Trabalho Campeonato de Futebol Programação Orientada a Objetos (SCC204) Prof. Moacir Pereira Ponti Junior 26 de abril de 2011 Trabalho Prático - Parte 2 Tarefas O Trabalho 2 envolve o uso de interface
Modelo Conceitual. Análise e Projeto de Sistemas Avançados. Aula 5. Allan Rodrigo Leite
Modelo Conceitual Análise e Projeto de Sistemas Avançados Aula 5 Allan Rodrigo Leite Modelo Conceitual Oferece uma visão das informações que são gerenciadas pelo sistema Representação e transformação da
Modelagem de dados usando o modelo Entidade- Relacionamento (ER)
Modelagem de dados usando o modelo Entidade- Relacionamento (ER) slide 1 Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Tópicos Usando modelo de dados conceituais de alto nível
Diagramas de Classes. Diagramas de Classes. Diagramas de Classes. Análise e Projeto de Sistemas OO
Análise e Projeto de Sistemas OO s Representam os tipos de objetos existentes no modelo Descritas a partir de seus atributos, operações e restrições Podem ser organizadas segundo uma estrutura de generalização/especialização
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE Nickerson Fonseca Ferreira [email protected] O que é?? 2 A UML
Projeto Banco de Dados
Projeto Banco de Dados Principais Fases do Processo Projeto Conceitual Projeto Lógico Projeto Físico 32 Projeto Banco de Dados Projeto Conceitual Modelagem de dados em alto nível Foco no domínio do problema
ASSOCIAÇÃO ENTRE CLASSES
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 5 ASSOCIAÇÃO ENTRE CLASSES O objetivo deste texto é rever, um pouco mais detidamente, o relacionamento
Aula 15 Modelagem de Classes de Análise. Análise de Sistemas Prof. Filipe Arantes Fernandes
Aula 15 Modelagem de Classes de Análise Análise de Sistemas Prof. Filipe Arantes Fernandes [email protected] Outline O paradigma da OO Classes e objetos Mensagens O papel da abstração Encapsulamento
Atividade 07 - Tutorial sobre o Astah Community
Atividade 07 - Tutorial sobre o Astah Community 1. Introdução Astah Community é uma poderosa ferramenta que ajuda você a modelar seus diagramas em UML. Nesse tutorial nós vamos guiar você na criação de
Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }
Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação
Polimorfismo. PARTE II: Java e OO. Polimorfismo. Polimorfismo. Polimorfismo. Polimorfismo
PARTE II: Java e OO Interface Herança Herança e polimorfismo Classes e métodos abstratos : muitas formas de implementação de uma operação Permite esconder diferentes implementações atrás da mesma interface
Diagrama de Casos de Uso
Diagrama de Casos de Uso Régis Patrick Silva Simão Régis Simão Diagrama de Casos de Uso 1/29 Agenda Introdução Casos de Uso Atores Relacionamento entre Atores e Casos de Uso Relacionamento entre Casos
Análise Orientada a Objetos. Análise Orientada a Objetos; O Paradigma de Objetos; A UML.
ESPECIALIZAÇÃO EM GESTÃO DE TECNOLOGIAS DA INFORMAÇÃO Análise Orientada a Objetos AULA 03 Análise Orientada a Objetos; O Paradigma de Objetos; A UML. Prof. Sandrerley R. Pires Goiânia, agosto de 2003 Conceitos
UML. Adriano J. Holanda 21/3/
UML Adriano J. Holanda 21/3/2016 UML Introdução UML - Unified Modeling Language Linguagem Unificada de Modelagem. Adquiriu maturidade na segunda década de 1990 pela fusão dos métodos e diagramas de Grady
Linguagem de Programação II Relacionamento entre classes
Linguagem de Programação II Relacionamento entre classes Prof. Alessandro Borges 2 Tópicos Relacionamento entre Classes Associação Definição Cardinalidade / Multiplicidade Conectividade Tipos de Associação
PROGRAMAÇÃO ORIENTADA A OBJETOS I -TÉCNICAS DE OO. Prof. Angelo Augusto Frozza, M.Sc.
PROGRAMAÇÃO ORIENTADA A OBJETOS I -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Técnicas de Orientação a Objetos Classes e objetos Métodos Subscritos Métodos Sobrecarregados
DIAGRAMAS DE CLASSE UML
DIAGRAMAS DE CLASSE UML Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Antes de mais nada... Calendário de Reposições Aula 1: 27/10/2017, 8h-10h, Sala 8 Aula 2: A verificar Aula 3: A verificar
Panorama da notação UML
Panorama da notação UML A notação UML (Unified Modeling Language linguagem de modelagem unificada) evoluiu desde que foi adotada a primeira vez como um padrão em 1997. Uma revisão maior para o padrão foi
PCS3413 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
Classes 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
Conceitos de Programação Orientada a Objetos
Conceitos de Programação Orientada a Objetos [email protected] 80 Por que a Orientação a Objetos? As abstrações podem corresponder às "coisas" do domínio do problema, facilitando o entendimento Esta
Revisão Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula
Revisão Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula 1 Mostra um conjunto de classes e seus relacionamentos. É o diagrama central da modelagem orientada a objetos.
Análise e Projeto de Sistemas
Análise e Projeto de Sistemas Prof. Dr. Ronaldo C. de Oliveira [email protected] www.facom.ufu.br/~ronaldooliveira FACOM - 2017 Objeto É uma entidade real ou abstrata, com características específicas
UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS
Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista
Interfaces 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
A B Classe Genérica D A C. Classe Especializada. Classe Especializada. Características Herdadas
Herança e Polimorfismo Prof. Bruno Gomes [email protected] Programação Orientada a Objetos Revisando -Herança Estrutura Hierárquica e modular Projeção de classes genéricas que podem ser especializadas
Programação Estruturada e Orientada a Objetos. Objetos e Métodos
Programação Estruturada e Orientada a Objetos Objetos e Métodos 2013 O que veremos hoje? Objetos e Métodos Transparências baseadas no material do Prof. Jailton Carlos Objetivos Aprender a criar construtores;
MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE)
MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) g BREVE HISTÓRICO g CARACTERÍSTICAS g CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS g MODELAGEM DE ANÁLISE E DE PROJETO 1 I. BREVE HISTÓRICO Em fins dos anos
Análise e Projeto Orientados a Objetos: Visibilidade Diagrama de Classe de Projeto
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Análise e Projeto Orientados a Objetos: Visibilidade Diagrama de Classe
Manual do Usuário Webmail SoftSul
Manual do Usuário Webmail SoftSul 2 Índice Interface Geral do Webmail 03 Caixa de entrada 04 Opções de apresentação e filtro 05 Os e-mails nos seus estados 06 Marcar um e-mail 07 Acesso a Configurações
UML. Diagrama de Classes
UML Diagrama de Classes Introdução A modelagem de objetos incorpora a estrutura estática de um sistema mostrando: os objetos pertencentes ao sistema os relacionamentos entre esses objetos os atributos
15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo
DCC / ICEx / UFMG Primeiro Diagrama de Classes Diagrama de Classes Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Professor Aluno matricula Outro Diagrama de Classes Diagrama de Classes Serve de
Padrões de Projeto. Padrões de Projeto. Além dos 23 Padrões GoF. Os 23 Padrões de Projeto. Documentação de um Padrão. Classificação dos Padrões
DCC / ICEx / UFMG Padrões de Projeto Padrões de Projeto Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para
UML Relacionamentos. Relacionamento é uma conexão entre itens A maioria dos itens relacionam-se entre si. Quatro tipos de relacionamentos:
Relacionamentos Relacionamento é uma conexão entre itens A maioria dos itens relacionam-se entre si. Quatro tipos de relacionamentos: Dependência Generalização Associação Realização Relacionamentos - Dependência
Programação Orientada a Objetos Introdução a POO
Introdução a POO Implementação Técnico em Informática, M.Sc. Objetos 12/04/2012 20:17 Redes de Computadores 2 Domínio e Aplicação Domínio Composto pelas entidades, informações e processos relacionados
UML. Modelando um sistema
UML Modelando um sistema Fases do desenvolvimento de Software Análise de requisitos Análise Projeto Programação Análise de Requisitos Esta fase captura as intenções e necessidades dos usuários do sistema
UML. Diagrama de Classe
UML Diagrama de Classe Em UML as classes são representadas por um retângulo dividido em três compartimentos: o compartimento de nome, que conterá apenas o nome da classe modelada, o de atributos, que possuirá
Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos
Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans Roteiro Introdução Conceitos de Oientação a Objetos A Linguagem Java NetBeans (www.netbeans.org) Fernando Vieira Paulovich [email protected]
Linguagem de Programação IV Introdução
Linguagem de Programação IV Introdução Prof. Alessandro Borges 2 Tópicos Orientação a objetos Classe Objeto Abstração Encapsulamento Herança Polimorfismo Plataforma Java 3 4 POO é um paradigma de programação
Lista Diagrama de Casos de Uso
Lista Diagrama de Casos de Uso 1. Qual é a notação da UML para um caso de uso? Qual é a notação da UML para um ator? Qual a notação utilizada na UML para o relacionamento de generalização? 2. Defina o
POO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Herança Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José [email protected] http://docente.ifsc.edu.br/mello/poo 11 de setembro
Aula 7 Visibilidade entre objetos e Diagramas de Classes
Departamento de Sistemas de Computação Universidade de São Paulo SSC 124 Análise e Projeto Orientados a Objetos Aula 7 Visibilidade entre objetos e Diagramas de Classes Responsável Prof. Seiji Isotani
Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli
Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,
Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira
Engenharia de Software Aula 10 Representação dos Conceitos de Orientação a Objetos Prof. Me. Rogério Ferreira 2 Roteiro Representação dos Conceitos OO Mensagens Navegabilidade Pacotes Encapsulamento Herança
DCC004 - Algoritmos e Estruturas de Dados II
Conceito de especificação de software Renato Martins Email: [email protected] https://www.dcc.ufmg.br/~renato.martins/courses/dcc004 Material adaptado de PDS2 - Douglas Macharet e Flávio Figueiredo
Programação Avançada C++ Slide 12 Nielsen Castelo Damasceno
Programação Avançada C++ Slide 12 Nielsen Castelo Damasceno Visibilidade de membros Membro da classe derivada pode usar os membros públicos ( public ) e protegidos ( protected ) da sua classe base (como
Java 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
Daniel Wildt
Orientação a Objetos 1 Daniel Wildt http://danielwildt.blogspot.com Agenda 2 Orientação a Objetos Classe x Objeto Representação classe Atributos / operações Construtores e Destrutores Liberando memória
Banco de Dados Modelagem Conceitual de Dados. Prof. Edjandir Corrêa Costa
Banco de Dados Modelagem Conceitual de Dados Prof. Edjandir Corrêa Costa [email protected] Introdução Modelagem conceitual de dados É a etapa inicial do projeto de banco de dados É uma descrição
Modelagem de Sistemas
Lista de Exercícios AV1 Luiz Leão [email protected] http://www.luizleao.com Questão 1 Que evento influenciou no surgimento da Engenharia de Software e qual a sua finalidade? Questão 1 Resposta Que evento
Diagrama de Classes. ENG1518/3VC Sistemas de Informação Gerenciais Prof. Marcos Villas
Diagrama de Classes ENG1518/3VC Sistemas de Informação Gerenciais Prof. Marcos Villas [email protected] 1 Diagrama de Classes Tópicos Introdução a Orientação de Objetos Notação do Diagrama de Classes Relacionamentos
15/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,
DMS - DOCUMENTO DE MODELAGEM DE SISTEMA VERSÃO: [NOME DO SISTEMA] [SIGLA] [AUTORES]
DMS - DOCUMENTO DE MODELAGEM DE SISTEMA Este documento foi criado seguindo as recomendações e orientações do livro UML na Prática Do Problema ao Sistema e do modelo PRISM do MPDS (Modelo Prático para Desenvolvimento
CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO
CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CLASSES E OBJETOS PARA PROGRAMAÇÃO ORIENTADA A OBJETOS Classes são estruturas das linguagens de POO criadas para conter os dados que
