Paradigmas da Programação – Semestre 1 – Aula 5

Slides:



Advertisements
Apresentações semelhantes
Paradigmas da Programação
Advertisements

Paradigmas da Programação – Semestre 1 – Aula 6
Paulo Marques Hernâni Pedroso
UML Modelando um sistema.
Projeto 1.
Diagrama de Classes.
UML Material retirado da apostila do Professor Cesar Augusto Tacla
UML: Diagrama de Classes
Java: Pacotes e Modificadores de Visibilidade
Java: Pacotes e Modificadores de Visibilidade
Introdução a diagrama de classes e UML
Paradigmas da Programação – Semestre 1 – Aula 3
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Fases do desenvolvimento de software UML
Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML Diagrama de Classes Professor: Armando Hage.
DIAGRAMA DE COMPONENTES
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Programação Orientada a Objetos com Java
Aula prática 13 Orientação a Objetos – C++ Parte 1
JAVA Orientação a Objetos
DIAGRAMA DE CLASSE Modelagem de Software
Paradigmas da Programação – Semestre 1– Aula 5 Lab3
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Programação I Aula 2 (Métodos)
Paradigmas da Programação – Semestre 1 – Aula 2 Professores: Eduardo Mantovani Fábio de Paula.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof
Orientação a Objetos Parte I
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
Programação Orientada à Objetos
Análise e Projeto de Sistemas
Laboratório I Mateus Raeder. Mateus Raeder – fevereiro de 2009 Associação entre classes  Um objeto é a representação de uma entidade do mundo real 
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa Como criar uma Classe e.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa Classes e Objetos em Java.
Programação Orientada à Objetos
Paradigmas da Programação – Semestre 1 – Aula 9 Professor: Eduardo Mantovani )
© Ricardo Pereira e Silva
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Laboratório I Mateus Raeder. Mateus Raeder – fevereiro de 2009 UML – Unified Modeling Language  Linguagem criada com a finalidade de criar um padrão.
Análise Orientado aos Objetos Prof. Wolley W. Silva
Programação Orientada à Objetos
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
Curso de Aprendizado Industrial Desenvolvedor WEB
Prof. Gilberto Irajá Müller
Aula Prática 4 Monitoria IP/CC (~if669).
Prof.: Bruno Rafael de Oliveira Rodrigues. Construtor é bloco declarado que é chamado no momento em que o Objeto é criado (instanciado). Todas as classes.
POO Aula 03 Projeto OO com UML Eduardo Figueiredo 11 de Março de 2010.
Trabalho de Engenharia de Software II
Herança e Arquitetura em camadas
Análise e Projeto de Sistemas
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Paradigmas da Programação – Semestre 1 – Aula 3 Professor: Eduardo Mantovani )
Construtores e Destrutores
Paradigmas da Programação – Semestre 1 – Aula 8 Professor: Eduardo Mantovani )
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Modificadores Programação II.
Aula Prática 13 Orientação a Objeto Monitoria
Modelo de Análise e Projeto
Paradigmas da Programação – Semestre 1 – Aula 5 Lab Professores: Fábio Paula Santos Eduardo Mantovani.
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
20/04/2017 Orientação a Objetos 1 1.
Módulo II Capítulo 1: Orientação a Objetos
Paradigmas da Programação – Semestre 1 – Aula 7 Professor: Eduardo Mantovani )
Projeto de Arquitetura de Software
Engenharia de Software Orientada a Objetos Professor: Guilherme Timóteo Aula 3: – Modelagem de Classes (parte 2)
Herança em Java Curso: Informática Disciplina: Programação Orientada a Objetos Prof. Abrahão Lopes
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Paradigmas da Programação – Semestre 1 – Aula 5 Professor: Eduardo Mantovani (eduardo.mantovani@aes.edu.br)

UML: Diagrama de classe – Conceito / Finalidade O diagrama de classe UML é um dos artefatos disponíveis na linguagem, cujas finalidades principais são: Modelar a classe antes da implementação, tornando-se um gabarito para a escrita do código Documentar a classe, de modo a facilitar a integração entre diferentes classes, que podem ser escritas por diferentes programadores Deve ser escrito com respeito aos conceitos de coesão e de acordo com a abstração desejada para o problema Deve ser respeitado plenamente no momento da implementação do código Há uma relação direta entre o diagrama de classe e o código na linguagem O diagrama de classe é independente de linguagem de programação

UML: Diagrama de classe - Sintaxe A sintaxe completa prevê seções para o nome da classe, para seus atributos e para seus métodos Uma sintaxe simplificada pode apresentar apenas o nome da classe, com a intenção de dar apenas a visão global do sistema (o IDE BlueJ adota essa sintaxe simplificada) Classe atributos métodos

UML: Diagrama de classe – Nome da classe A seção dedicada a apresentar o nome da classe é a mais simples do diagrama Requer apenas a indicação do nome da classe, podendo ter apenas algumas variações devido a modificadores previstos na linguagem O nome da classe indicado no diagrama será aquele implementado no código

UML: Diagrama de classe – Atributos A seção de atributos do diagrama de classe UML segue a sintaxe <visibilidade> nome atributo<:tipo> A visibilidade pode ser: Exemplo: - salario:double Pode-se adotar uma forma simplificada, apresentando apenas o nome do atributo. Útil durante a fase de desenvolvimento da idéia, quando as preocupações não estão voltadas para os tipos, mas sim, para as funcionalidades da classe + pública - privada # protegida

UML: Diagrama de classe – Métodos A seção de métodos do diagrama de classe UML segue a sintaxe <visibilidade> nome método(<parâmetros>)<:tipo retorno> A visibilidade segue a mesma sintaxe dos atributos A forma simplificada pode ser adotada, apresentando apenas o nome do método Os parâmetros seguem a sintaxe: nome parâmetro<:tipo>, nome parâmetro<:tipo>, ... Exemplo: - ajustarSalario(novoSalario:double):void

UML: Diagrama de classe – Comentários Há sintaxe prevista na linguagem para a indicação de comentários sobre a classe Consiste, basicamente, na indicação por um retângulo com a “ponta dobrada” fora da classe e ligado a ela por uma linha sem seta Classe atributos métodos comentários

UML: Diagrama de classe – Correspondência com código Java A correspondência entre o diagrama de classe UML e a classe em linguagem Java é direta e simples Uma vez disponível o diagrama de classe, a codificação fica simplificada e pode ser feita sem a necessidade de esforço (exceto pela lógica dos métodos, que não é prevista no digrama de classe Exemplo: public class Pessoa { private String nome; private String rg; public Pessoa() { } public String obterNome(){ return nome; public void ajustarNome(String novoNome) { nome = novoNome; public String obterRg(){ return rg; public void ajustarRg(String novoRg) { rg = novoRg; Pessoa nome: String rg: String +Pessoa() +obterNome():String +ajustarNome(novoNome:String):void +obterRg():String +ajustarRg(novoRg:String):void

Exercícios Para os substantivos a seguir, defina classes, atributos, métodos construtor, acessores e modificadores para cada um deles: Pessoa, Funcionário, Veículo, CD, Livro, Casinha Utilize a sintaxe de diagrama de classe UML

UML: Relacionamento entre classes - Dependência Quando uma classe é referenciada por outra, há uma relação de dependência entre a classe que referencia e a classe referenciada Ter um atributo do tipo de uma classe, um parâmetro ou um retorno de método ou, simplesmente, utilizar uma variável da classe daquele tipo é uma referência. Forma-se então uma composição de classes. A linguagem UML prevê uma notação para isso, dentro do diagrama de classes Sintaxe: uma seta aberta com linha tracejada que sai da classe que faz a referência e vai até a classe que a referenciada Exemplo: Circle Canvas Casinha Square Triangle

UML: Estereótipos de classes Estereótipos são como uma segregação de classes pelas funções que exercem Nesse curso adotaremos 3 principais estereótipos: controle (control), entidade (entity) e fronteira (boundary) Estereótipo entidade: classes que representam substantivos existentes no problema real. Exemplos: Pessoa, Veículo, CD, Empréstimo (biblioteca), etc... Estereótipo controle: classes que são utilizadas para a manipulação de classes do estereótipo entidade. Exemplos: EstatísticaEmpréstimos, CálculoFolhaPagamento, ResumoAtividadesVeículos, etc... Estereótipo fronteira: classes usadas para formar a interface com o usuário (os formulários quando utilizado o ambiente gráfico). Exemplos: CadastroPessoas, CadastroVeículos, FormEmpréstimo, etc...

UML: Estereótipos de classes Sintaxe no diagrama de classes A linguagem UML prevê uma sintaxe específica para representarmos os estereótipos junto dos diagramas de classes Com o uso dos estereótipos, fica mais fácil entender a finalidade da classe no contexto do sistema <<controle>> Emprestimo <<entidade>> Livro <<fronteira>> FormEmprestimo <entidade>> Aluno <<entidade>> CD

UML: Notação para representação de objetos Muitas vezes é interessante apresentar objetos de uma ou mais classes em um diagrama para melhor entendimento do problema A linguagem UML prevê uma notação para isso, que se assemelha à notação de classe, com diferenças sutis Retângulo com duas seções: Descritor da instância e seção de atributos e respectivos valores A forma mais simplificada tem apenas o descritor da instância Descritor da instância. Sintaxe: nome da instância: Classe Atributos e valores. Sintaxe: atributo=valor ... Descritor da instância Atributos e valores

Exercícios Crie uma situação-problema onde você possa aplicar uma composição de classes e, se possível, indique os estereótipos das classes empregadas Descreva a situação-problema (suscintamente) Modele as classes que resolverão a situação