anÁlise e projeto orientada a objetos ufrj/im/dcc lab psi mai/1999

Post on 17-Apr-2015

104 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ANÁLISE E PROJETO ORIENTADA A OBJETOS

UFRJ/IM/DCC

Lab PSI

mai/1999

2

Sumário

• Conceitos de Análise e Projeto Orientados a Objetos

• Rose 98 ®

3

Bibliografia• FURLAN, José Davi. Modelagem de Objetos

através da UML. 1998.

• BOOCH, Grady. Object-Oriented Analysis and Design With Applications. 2nd Ed,1994

• MEYER, Bertrand. Object-Oriented Software Construction. 2nd Ed, 1997

• RINEHART, M. Visual Basic 5 Power OOP. 1997

• Rose 98® . 1998 - Manuais de VB

4

>>> OBJETIVOS

• “Engenharia de Software é a produção de Software de QUALIDADE” (Meyer)

5

Fatores de Qualidade

• Correção

• Robustez

• Extensibilidade

• Reutilização

• Compatibilidade

• Eficiência

• Portabilidade

• Facilidade de uso

• Funcionalidade

• Tempestividade

• ...

6

Tradeoffs

Desejável

`Comum`

Funcionalidade

OutrosFatores

Osmond, 1995

Depuração

7

Manutenibilidade

Lientz, 1980

8

OO - Conceitos Básicos

• Objeto• Classe• Mensagem• Atributo• Operação• Polimorfismo• Herança

• Evento• Estado• Generalização• Especialização• Encapsulamento• ...

9

Qual o conceito mais importante da Orientação

a Objetos?

• É o conceito de CLASSE

10

Classe

Nome da Classe

atributoatributo : tipo do dadoatributo : tipo do dado = valor inicial

operaçãooperação (lista de arg.) : tipo de res.

11

Objeto (Instância de Classe)

12

Características dos Objetos

• Real ou abstrato

• Ocupa espaço físico ou lógico

• O estado de suas características (atributos e operações) o tornam único

• Identidade mesmo com mudanças de estado

• Comportamento define ações e reações

13

Classe Indivíduo

14

AbstraçãoOrganização

+códigoDaOrganização+nomeDaOrganização+endereçoDaOrganização

Cliente Fornecedor

15

Atributo

Indivíduo+ códigoDoIndivíduo : long+ sexo : M ou F+ dataDoNascimento : data.....

16

Visibilidade do Atributo

• + Visibilidade pública (default)

• # Visibilidade protegida (classes do pacote)

• - Visibilidade privada (internas à classe)

• { / Atributo derivado - Informação }

17

Atributo Identificador da Classe

• IDO : identificador do objeto (dentro da classe)

18

Histórico de Atributo

Funcionário Cargo

Cargo deFuncionário

* *

19

Operação

• Operação:– Serviço de uma classe– Procedimento algorítmico

• Método > implementação de uma operação

• Operação é resultante da passagem de uma Mensagem de um objeto para outro

20

Exemplos

Indivíduo

+ incluirIndivíduo (códigoDoIndivíduo)+ destruirIndivíduo (códigoDoIndivíduo)

21

Verificar estoque(item)

:Item de pedido

:Item deestoque

Item de Estoque

verificarEstoque(item)

22

Sintaxe da definição de operação

• Visibilidade NomeDaOperação (parâmetros) : TipoDeRetorno {Propriedade}

23

parâmetros

• nome tipo : tipo_expressão = valorDefault

• Exemplo:(item in : long = 0, código out : long)

24

Propriedades

• Classificação

• precondição

• poscondição

• tipo de exceção

• concorrência

• transformação

• estereótipo

25

Classificação:

• Construtoras (criam ou inicializam)

• Seletoras

• Modificadoras

• De iteração

• Destrutoras

26

Polimorfismo

• Permite que uma operação tenha o mesmo nome em classes diferentes (em uma hierarquia de herança) porém com implementações diferentes)

27

Aplicação Financeira

calcularSaldo ()

calcularSaldo () calcularSaldo () calcularSaldo ()

Renda Fixa Poupança Fundo Açoes

top related