27
Classes e objetos Modelagem P. O. O. Prof. Grace

Classes e objetos Modelagem P. O. O. Prof. Grace

Embed Size (px)

Citation preview

Page 1: Classes e objetos Modelagem P. O. O. Prof. Grace

Classes e objetosModelagem

P. O. O.

Prof. Grace

Page 2: Classes e objetos Modelagem P. O. O. Prof. Grace

2

Aula anterior

Classe X Objeto– Ex: Classe círculo

Encapsulamento– Atributos + métodos = estrutura única (classe)

– Controle de visibilidade

Método construtor– Mesmo nome da classe

– Parâmetros (pode ter ou não)

– Construtor padrão java

Page 3: Classes e objetos Modelagem P. O. O. Prof. Grace

3

Exemplo: Classe ContaCorrente

Atributos (variáveis de instância)– Número da conta

– Titular

– Saldo

Métodos (operações/ tarefas)– Construtor: inicializa Titular, número da conta, saldo

– Depósito (quantia)

– Saque (quantia)

– Exibir Dados da conta

Page 4: Classes e objetos Modelagem P. O. O. Prof. Grace

4

Definição de classes

Quem define que classes criar? Como saber que métodos criar? E quantos aos atributos? Que tipos de dados

eles devem armazenar? Quantos devo criar? Atividade: Modelagem do sistema

– Realizada para elaborar e representar as soluções dadas ao sistema (análise e projeto)

Page 5: Classes e objetos Modelagem P. O. O. Prof. Grace

5

O que é Modelagem?

Ato de criar modelos; Representação de algo do mundo real por

meio de modelos; Simplificação da realidade:

– Ex.: planta de uma casa representa mas não é a casa

Modelagem de sistemas:– representações do sistema que estamos

desenvolvendo

Page 6: Classes e objetos Modelagem P. O. O. Prof. Grace

6

Por que é importante?

Ajuda a visualizar e compreender o sistema

Saímos do mundo das idéias e para algo “palpável”

Ajuda a perceber furos de entendimento sobre o que

esta sendo tratado antes de gastarmos tempo

implementando (gerenciamento de riscos)

Compreensão única do sistema melhorando a

comunicação dentro da equipe e com o cliente

Page 7: Classes e objetos Modelagem P. O. O. Prof. Grace

7

Objetivos da modelagem

Visualizar o sistema;

Especificar estrutura e/ ou o comportamento

do sistema;

Proporcionar guia para construção;

Documentar tomadas de decisões;

Page 8: Classes e objetos Modelagem P. O. O. Prof. Grace

8

Escolha de modelos

A escolha dos modelos pode influenciar na definição da solução:– Modelos estruturados: soluções estruturadas– Modelos orientados a objetos: soluções O. O.

Os melhores modelos estão relacionados à realidade;

Nenhum modelo único é suficiente. – Ex.: plantas de uma casa

Baixa, Elétrica, Hidráulica, Telefonia, etc...

Page 9: Classes e objetos Modelagem P. O. O. Prof. Grace

9

Modelagem O. O.

Representação mais próxima da nossa realidade; Elementos base: objetos ou classes;

– Objetos possuem: Identidade (nome/ instância);Comportamento;Estado associado a ele;

– Classes: representam um conjunto de objetos; Abordagem bastante utilizada na construção de

sistemas das mais variadas áreas, dimensões e complexidades: uso da UML.

Page 10: Classes e objetos Modelagem P. O. O. Prof. Grace

10

UML

Linguagem para:– Visualização

– Especificação

– Construção e

– Documentação

de artefatos de sistema de software

Artefatos: Requisitos do sistema, modelos, código de

programa, componentes executáveis, arquitetura, etc.

Page 11: Classes e objetos Modelagem P. O. O. Prof. Grace

11

Histórico da UML

Surgiu a partir das metodologias: – Booch, OMT e OOSE (1995)

Linguagem expressiva baseada em diagramas Não é uma metodologia de desenvolvimento de

sistemas Usada em várias metodologias e processos de

desenvolvimento: iterativo (ciclos), incremental, baseado em casos de uso, dentre outros.

Hoje: Versão 2.0

Page 12: Classes e objetos Modelagem P. O. O. Prof. Grace

12

Diagramas UML

Diagramas de estrutura: – Representam a visão estática da aplicação.– São eles: Classes; Objetos; Componentes; Estrutura composta;

Pacotes; Implantação; Diagramas de Comportamento:

– Aspectos gerais de comportamento;– São eles: Casos de uso; Atividades; Máquina de Estados;

Diagramas de Interação: – Representa diferentes aspectos de interação entre classes e

objetos; deriva dos anteriores; – São eles: Seqüência; Comunicação; Tempo; Diagrama geral de

interação

Page 13: Classes e objetos Modelagem P. O. O. Prof. Grace

13

Por que tantos diagramas?

Representam as múltiplas visões do sistema;

Visão mais geral ou mais específica de

acordo com o diagrama;

Descoberta de falhas anteriores;

Cada diagrama tem sua finalidade;– Ex.: Caso de uso, classe, seqüência e atividade

Page 14: Classes e objetos Modelagem P. O. O. Prof. Grace

14

Caso de uso

Diagrama mais geral da UML; Base para desenvolvimento de outros diagramas; Auxilia no levantamento e análise dos requisitos; Linguagem simples e fácil compreensão para

usuários; Idéia geral de como o sistema se comporta; Identifica atores do sistema (usuários e outros

softwares);

Page 15: Classes e objetos Modelagem P. O. O. Prof. Grace

15

Sistema de controle de Submissões

Atores Casos de uso Relações

Page 16: Classes e objetos Modelagem P. O. O. Prof. Grace

16

Diagrama de classes

Define a estrutura das classes utilizadas pelo

sistema;

Determina os atributos e métodos de cada classe;

Estabelecer como as classes se relacionam entre si;

Apoio para a maioria dos outros diagramas;

Mais utilizado e importante da UML.

Page 17: Classes e objetos Modelagem P. O. O. Prof. Grace

17

Exemplo

Page 18: Classes e objetos Modelagem P. O. O. Prof. Grace

18

Diagrama de seqüência

Preocupa-se com a ordem em que as mensagens

são trocadas entre os objetos de determinado

processo;

Baseia-se em um Caso de Uso definido

anteriormente;

Apóia-se no Diagrama de Classes para determinar

objetos envolvidos e os métodos disparados;

Page 19: Classes e objetos Modelagem P. O. O. Prof. Grace

19

Exemplo

Page 20: Classes e objetos Modelagem P. O. O. Prof. Grace

20

Diagrama de Máquina de estados

Identifica mudanças sofridas nos estados de:– instância de uma classe ou

– caso de uso ou

– subsistema ou

– sistema completo.

Baseia-se em um Caso de Uso

Apóia-se no Diagrama de Classes

Page 21: Classes e objetos Modelagem P. O. O. Prof. Grace

21

Exemplo

Page 22: Classes e objetos Modelagem P. O. O. Prof. Grace

22

Diagrama de Classe: Círculo

Visibilidade

Page 23: Classes e objetos Modelagem P. O. O. Prof. Grace

23

No jGraspCrie um projeto e adicione as classes que fazem parte do projeto

Page 24: Classes e objetos Modelagem P. O. O. Prof. Grace

24

Trabalho de UML

Pesquisar diagramas UML identificando seu uso, sua

importância e quando possível apresente exemplos.

Sugestões de pesquisa:– http://www.uml.org/

– Booch, Grady. The unified modeling language user guide.

– Lima, Adilson da Silva. UML 2.0: Do Requisito à Solução.

Entrega dia 30/11

Vale presença e nota;

Page 25: Classes e objetos Modelagem P. O. O. Prof. Grace

25

Exercício (para entregar)

1. Elabore o diagrama de classes para a

classe ContaCorrente;

2. Implemente a classe ContaCorrente– O valor inicial do saldo deve ser sempre maior

ou igual a 0;

– Não esqueça de validar os valores de saque e

depósito (não devem ser menores que zero).

Page 26: Classes e objetos Modelagem P. O. O. Prof. Grace

26

Classe ContaCorrente

Atributos (variáveis de instância)– Número da conta

– Titular

– Saldo

Métodos (operações/ tarefas)– Construtor: inicializa titular, numero da conta e saldo (sempre

maior ou igual a zero);

– Depósito (atualizar saldo acrescido da quantia depositada);

– Saque (atualizar saldo decrescido da quantia sacada);

– Exibir dados da conta

Page 27: Classes e objetos Modelagem P. O. O. Prof. Grace

27

Discussão

Precisamos dos métodos– Set/ get saldo?– Set/ get titular?– Set/ get número da conta?

Sugestão:– Codifique os métodos set e get titular– Considere esses métodos também no diagrama

de classes