A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Diagrama de Classes: Operações

Apresentações semelhantes


Apresentação em tema: "Diagrama de Classes: Operações"— Transcrição da apresentação:

1 Diagrama de Classes: Operações

2 Operações Definem o serviço que uma classe pode oferecer.
Geralmente utilizam os atributos para produzir uma informação ou um resultado. Objetos de uma classe compartilham as mesmas operações. ContaCorrente -Titular[1..2]: String {Não pode ser nulo} Saldo[1]: Int =0 {Duas casas decimais nos centavos} /NumerodaConta[1] {Vem da última conta aberta} +ConsultaSaldo (): Int +AlteraTitular(NovoTitular: String)

3 Operações [visibilidade] nome ([lista-de-parâmetros]) : [resultado] {[propriedades]} Se parecem com o conceito de visibilidade visto nos atributos Privado (-): Só objetos da mesma classe Público (+): Qualquer objeto pode chamar a operação, se possuir acesso ao pacote Pacote(~): Somente objetos no mesmo pacote Protegido(#): Somente objetos com herança. Normalmente são públicas até que se necessite especificar.

4 Operações [visibilidade] nome ([lista-de-parâmetros]) : [resultado] {[propriedades]} Deve ser significativo e expressivo. Normalmente usa um verbo (define ação). Usuario +Atualizar Usuario +AlterarNome +AlterarSenha +GerarNovaSenha

5 Operações [visibilidade] nome ([lista-de-parâmetros]) : [resultado] {[propriedades]} Definem um input para a operação. Opcional. Podem alterar um atributo. Modelo: “nome:tipo”,separado por vírgulas ContaCorrente -Titular[1..2]: String {Não pode ser nulo} Saldo[1]: Int =0 {Duas casas decimais nos centavos} /NumerodaConta[1] {Vem da última conta aberta} +FecharConta () +AlteraTitular(NovoTitular: String)

6 Operações [visibilidade] nome ([lista-de-parâmetros]) : [resultado] {[propriedades]} Saída da operação. Normalmente é especificado qual tipo de dado será produzido como resultado. Usuario +ConsultaCredito(): int +GerarNovaSenha() String

7 Operações [visibilidade] nome ([lista-de-parâmetros]) : [resultado] {[propriedades]} Adiciona informações que não cabem a nenhum espaço. Pode ser também usado para especificar uma restrição. Usuario +ConsultaCredito(): int {Pode ser positivo ou negativo} +GerarNovaSenha() String {Não deve conter caracteres especiais}

8 Classe LocarDVD -CodigoLocado[1..*]: Int { podem ter vários DVD, sem padrão e não pode ser nulo} -CodigoLocatario[1]: Int -DataDevolucao[1..2]:Date {se houve lançamentos ou quantidade <2 o prazo é de 24h, se quantidade_de_DVDs> 3 a data = quantidade de DVDs exceto lançamentos} +contarDVD (): int +BonusDevolucaoAntecipada(Data_retorno:Date): boolean {se devolver o DVD antes da data de devolução, ganha um bônus de crédito para próximos empréstimos na proporção de 3->1}

9 Compartimentos definidos pelo usuário
É uma espaço adicional além do nome-atributo-operações do UML para colocar informações relevantes para uma classe. É opcional e deve ser usado com sabedoria (queremos objetividade não profusão). Muito útil em algumas especificidades de programação. Nome Atributos Operações Personalizado

10 Compartimentos Definidos pelo Usuário
LocarDVD -CodigoLocado[1..*]: Int { podem ter vários DVD, sem padrão e não pode ser nulo} -CodigoLocatario[1]: Int -DataDevolucao[1..2]:Date {se houve lançamentos ou quantidade <2 o prazo é de 24h, se quantidade_de_DVDs> 3 a data = quantidade de DVDs exceto lançamentos} +contarDVD (): int +BonusDevolucaoAntecipada(Data_retorno:Date): boolean {se devolver o DVD antes da data de devolução, ganha um bônus de crédito para próximos empréstimos na proporção de 3->1} Informações CriadoEm=“11/09/2006” Programador=“Cleber Matos” Projeto=“LocaWeb” Deve dar suporte á dispositivos móveis=Sim


Carregar ppt "Diagrama de Classes: Operações"

Apresentações semelhantes


Anúncios Google