Você está na página 1de 70

Disciplina:Anlise e Projeto de Sistemas OO

Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Lio 1:

Conceitos Bsicos de Orientao a objetos

Prof: Fbio Bianchi Campos

Conceitos bsicos de Orientao a Objetos

Qual a motivao para estudarmos Orientao a Objetos ?


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Para produzirmos sistemas com maior qualidade e produtividade; Para fazermos uma anlise e projeto coerente com as linguagens de programao orientadas a objetos; Para usarmos todo o potencial das ferramentas e linguagens de desenvolvimento baseadas em objetos.
Conceitos bsicos de Orientao a Objetos 2

Evoluo (Estruturado ==> Objetos)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Programao orientada a objetos uma evoluo da programao estruturada; Na programao estruturada temos funes ( procedures ou rotinas) e dados (normalmente globais) que podem ser acessados por qualquer funo; Na programao orientada a objetos, temos funes agregadas aos dados em uma unidade chamada objeto, ou seja, os dados no esto separados das funes, mas sim unidos as mesmas; A tendncia para os prximos anos que a maioria das linguagens de programao sejam baseadas em objetos.
Conceitos bsicos de Orientao a Objetos 3

Objetivos da Lio
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Apresentar os conceitos bsicos de orientao a objetos; Entender o conceito de classe e objeto; Aprender as relaes bsicas entre classes.

Conceitos bsicos de Orientao a Objetos

Assuntos a serem abordados na lio


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Histrico da Orientao a Objetos. ; Abstrao, encapsulamento; Modularidade, Hierarquia; Identidade, estado e comportamento; Atributos e Operaes; Relacionamentos; Objetos de anlise, projeto e implementao.

Conceitos bsicos de Orientao a Objetos

Histrico das Linguagens O.O.


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Simula 67(introduz conceitos de classes e objetos) [1967]; Smalltalk 1972, 74, 76, 78, 80; Ada 1983 (uso militar-EUA), Eilffel 1984 (caractersticas formais), Object pascal 1986; C++ 1.0 1980, C++ 2.0 1989, C++ 3.0 1990 (linguagem hbrida, derivada da linguagem C); JAVA 1995(Linguagem puramente orientada a objetos); 1995 --> Vrias linguagens agregando conceitos OO
Conceitos bsicos de Orientao a Objetos 6

Objetos no mundo real


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Podem ser definidos como objetos, entidades individuais que tenham caractersticas e comportamento; Exemplo: Automvel
Caractersticas: cor=vermelha, ano_fabricao=1997, potncia=150 HP,... Comportamento: se movimentar para frente, se movimentar para trs, ...
Conceitos bsicos de Orientao a Objetos 7

Objetos de um Programa Visual


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)
Enter title here

Uma janela visual: Tem tamanho, posio, cor de fundo (caractersticas). Pode ser minimizada, maximizada, etc... (comportamento)

OK

Um Boto: Tem tamanho, cor, texto, posio,..(caractersticas) Pode ser ativado por click do mouse (comportamento)

Conceitos bsicos de Orientao a Objetos

Objetos de Programa no-visuais


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objeto do tipo estrutura de dados:


Pilha, Lista, .....

Objeto que permite a comunicao entre processos (programas):


PortCom,....

Conceitos bsicos de Orientao a Objetos

Representao de objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

No desenvolvimento de sistemas, comeamos o desenvolvimento falando de objetos reais (notas fiscais, contratos, fichas cadastrais,etc..) e terminamos falando de objetos de programa (janelas, listas, ...) Independente da natureza do objeto, precisamos represent-los em nossos projetos de uma maneira padronizada; Esta maneira padronizada a UML (Unified Modeling Language).
Conceitos bsicos de Orientao a Objetos 10

UML (Unified Modeling Language)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Linguagem grfica padronizada para representao de objetos, classes, diagramas, etc...; Define os smbolos grficos que devem ser utilizados e o significado de cada smbolo; A primeira verso da norma UML foi publicada em setembro de 1997. Norma disponvel em www.omg.org; A UML no uma metodologia.
Conceitos bsicos de Orientao a Objetos 11

As contribuies para a UML


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Meyer
Before and after conditions

Harel
Statecharts

Gamma, et al
Frameworks and patterns,

Booch
Booch method

HP Fusion
Operation descriptions and message numbering

Rumbaugh
OMT

Embley
Singleton classes and high-level view

Jacobson
OOSE

Wirfs-Brock
Responsibilities

Shlaer - Mellor Booch method

Odell
Classification
12

Object lifecycles Conceitos bsicos de Orientao a Objetos

Tipos de Diagramas da UML


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Diagramas de Caso de Uso

Diagramas de Classes Diagramas de Objetos

Diagramas de Atividades

Diagramas de Sequncia

Modelo

Diagramas de Estados

Diagramas de Colaborao

Diagrama de Implantao

Diagramas de Componentes

Conceitos bsicos de Orientao a Objetos

13

Representao de Objetos (de acordo com a UML)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Nome do objeto

Conta01:ContaCorrente

Nome da classe do objeto

Conceitos bsicos de Orientao a Objetos

14

Classes de objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Quando desejamos falar de um conjunto de objetos semelhantes sem ter que falar de cada um individualmente; falamos da classe deste objeto; Exemplo: A classe dos automveis Corsa da GM; Quando se fala da classe est se falando de toda uma categoria de possveis objetos daquela classe.
Conceitos bsicos de Orientao a Objetos 15

Classes x objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Todos os Corsa_1.0 fabricados pela GM ==> Classe; O Corsa_1.0 de nmero de chassi BXW24579234567 ==> Objeto; Copos plsticos so baratos ==> Classe; Este copo plstico na minha mo est cheio de gua ==> Objeto.

Conceitos bsicos de Orientao a Objetos

16

Exerccio proposto 1
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Supondo o contexto de uma biblioteca universitria no informatizada, cite 2 exemplos de possveis classes e de seus objetos (objetos reais que existam na biblioteca).

Conceitos bsicos de Orientao a Objetos

17

Representao de classes (de acordo com a UML)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Nome da classe
ContaCorrente

Conceitos bsicos de Orientao a Objetos

18

Abstrao
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Abstrao o processo atravs do qual detalhes so ignorados, para nos concentrarmos nas caractersticas essenciais; A abstrao nos leva a representar os objetos de acordo com o ponto de vista e interesse de quem os representa.

Conceitos bsicos de Orientao a Objetos

19

Abstrao (exemplo)
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Para descrevermos um automvel (do ponto de vista de um observador externo) , identificamos a cor do mesmo, o nmero de portas, o tipo das rodas e pneus. Quando identificamos o automvel apenas a partir destas caractersticas externas estamos fazendo uma abstrao pois uma srie de detalhes internos no estaro sendo descritos.
Conceitos bsicos de Orientao a Objetos 20

Abstrao
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

A abstrao na descrio de objetos depende do ponto de vista e objetivo de quem faz a descrio; Se solicitarmos a um mecnico para fazer a descrio de um automvel a partir do seu ponto de vista , teremos um resultado bem diferente da descrio de um observador comum.
Conceitos bsicos de Orientao a Objetos 21

Importncia da abstrao
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

O conceito de abstrao importante para a anlise de sistemas, pois s iremos representar nos sistemas que vamos criar, aquelas caractersticas que nos interessam dos objetos reais; Ex: Ao modelarmos um objeto avio no contexto de um sistema de marcao de passagens areas, no vai nos interessar a caracterstica nmero de turbinas do avio, mas ir nos interessar a caracterstica nmero de assentos disponveis; Ao ignorarmos algumas caractersticas no relevantes em um determinado contexto, estamos fazendo uma Conceitos bsicos de Orientao a Objetos 22 abstrao.

Exerccio proposto 2
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

No contexto da biblioteca do exercicio 1. Ao representarmos (com o objetivo de criarmos depois um sistema informatizado para a biblioteca) a classe das obras (livros), quais seriam as caractersticas relevantes e as no-relevantes da mesma?

Conceitos bsicos de Orientao a Objetos

23

Encapsulamento
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

o processo de ocultao das caractersticas internas do objeto; O encapsulamento cuida para que certas caractersticas no possam ser vistas ou modificadas externamente.

Conceitos bsicos de Orientao a Objetos

24

Encapsulamento (exemplo)
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Podemos dizer que o motor de um automvel est encapsulado, pois normalmente no podemos ver ou alterar caractersticas do motor; Podemos ento utilizar um automvel sem conhecer nada das complexidades do motor, que esto encapsuladas.

Conceitos bsicos de Orientao a Objetos

25

Encapsulamento (no contexto de programas)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

No contexto de uma linguagem OO um objeto pode ser definido como um conjunto de funes unidas aos dados que elas necessitam; O encapsulamento protege os dados que esto dentro dos objetos, evitando assim que os mesmos sejam alterados erroneamente; Os dados s podero ser alterados pelas funes dos prrpios objetos; As funes dos objetos so chamadas de operaes ou mtodos.
Conceitos bsicos de Orientao a Objetos 26

Colaborao entre objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objeto A

Objeto B

Operaes do objeto C

OP1

OP2

OP3

OP4

Dados encapsulados do objeto C

D1

D2

D3

Objeto C

Obs:A representao acima no est baseada na UML


Conceitos bsicos de Orientao a Objetos 27

Exemplos de colaborao
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Ex1: Um objeto A visual (formulrio) solicita a um objeto C (acesso a dados) para incluir um novo item em um objeto de banco de dados; Ex2: Um objeto B visual (Boto) solicita a um objeto C (comunicao) que envie uma mensagem a um objeto remoto D (objeto remoto aquele que se encontra em outro equipamento na rede).
Conceitos bsicos de Orientao a Objetos 28

Hierarquia
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Quando vamos trabalhar com um grande conjunto de classes de objetos, necessrio organizar estas classes de maneira ordenada de modo que tenhamos uma hierarquia; Em uma hierarquia de classes teremos as classes mais genricas no topo, e as mais especficas na base.

Conceitos bsicos de Orientao a Objetos

29

Hierarquia (Exemplo)
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Em uma hierarquia de 3 nveis sobre automveis podemos ter:


Automveis;
automveis utilitrios (camionetes leves); utilitrios urbanos utilitrios off-road automveis de passeio; passeio familia passeio esportivo automveis de carga; carga inflamveis carga com frgirifico
Conceitos bsicos de Orientao a Objetos 30

Herana
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Em uma hierarquia de classes semelhantes podemos dizer que as classes mais especficas herdam as caractersticas das mais genricas, ou seja, todo automvel de passeio familia um automvel de passeio; A classe de nvel superior na na associao de herana chamada de super-classe e a inferior de sub-classe; Portanto automvel de passeio famlia uma subclasse de automvel de passeio.
Conceitos bsicos de Orientao a Objetos 31

Exemplo de Herana (UML)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Conta

Super Classe

ContaCorrente

ContaPoupanca

Sub Classes
Conceitos bsicos de Orientao a Objetos 32

Exerccio proposto 3
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

No contexto da biblioteca. Tente criar uma hierarquia das pessoas que de alguma maneira interagem com a biblioteca. Represente est hierarquia de acordo com a UML.

Conceitos bsicos de Orientao a Objetos

33

Classes e Objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objetos realizam aquilo que est definido na classe; Classes so como frmas para gerao de mltiplos objetos daquela classe; Um objeto no herda caractersticas da sua classe, mas sim, d existncia a estas caratersticas.

Conceitos bsicos de Orientao a Objetos

34

Definio de classe da norma UML


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Class A class is the descriptor for a set of objects with similar structure, behavior, and relationships. UML provides notation for declaring classes and specifying their properties, as well as using classes in various ways. Some modeling elements that are similar in form to classes (such as interfaces, signals, or utilities) are notated using keywords on class symbols; Classes are declared in class diagrams and used in most other diagrams. UML provides a graphical notation for declaring and using classes, as well as a textual notation for referencing classes within the descriptions of other model elements.

Conceitos bsicos de Orientao a Objetos

35

Continuao da definio da UML


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Semantics A class represents a concept within the system being modeled. Classes have data structure and behavior and relationships to other elements. The name of a class has scope within the package in which it is declared and the name must be unique (among class names) within its package. Basic Notation A class is drawn as a solid-outline rectangle with three compartments separated by horizontal lines. The top name compartment holds the class name and other general properties of the class (including stereotype); the middle list compartment holds a list of attributes; the bottom list compartment holds a list of operations.
Conceitos bsicos de Orientao a Objetos 36

Opes de representao para classes


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Fonte:norma UML
Conceitos bsicos de Orientao a Objetos 37

Identidade dos objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

o que permite que um objeto seja univocamente identificado; Exemplo: O corsa de placa JKP 1234; A identidade pode vir de um nome ou nmero associado ao objeto, de um atributo identificador (qualificador) ou de uma indicao explcita ao objeto.

Conceitos bsicos de Orientao a Objetos

38

Exerccio proposto 4
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Na sua opinio, qual seria uma boa maneira de darmos identidade a um objeto obra na biblioteca?

Conceitos bsicos de Orientao a Objetos

39

Texto complementar 1
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Leia o texto retirado do livro Tcnica de Modelagem de Objetos de James Rumbaugh; Anote as dvidas, ou pergunte quando achar necessrio; Responda as perguntas posteriores ao texto. Obs: O texto se encontra nas pginas a seguir
Conceitos bsicos de Orientao a Objetos 40

Exerccio complementar 1
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Explique o que voc entendeu de polimorfismo e d um exemplo (diferente do exemplo do livro).

Conceitos bsicos de Orientao a Objetos

41

Comportamento dos objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objetos reagem ao serem estimulados, e esta reao representa um comportamento; Exemplo: comportamentos do objeto automvel quando de pisa no acelerador >> carro aumenta a velocidade; quando se pisa no freio >> carro reduz velocidade.
Conceitos bsicos de Orientao a Objetos 42

Estado dos objetos (i)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

O estado atual de um objeto definido pelas suas caractersticas atuais; Exemplo: Um automvel pode assumir os seguintes estados:
Parado, velocidade=0; Se movimentando para frente, v>0 e marchas para frente engatadas; Se movimentando para trs, v>0 e marcha a r engatada.
Conceitos bsicos de Orientao a Objetos 43

Estado dos objetos (ii)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

O longo de sua vida um objeto assume diferentes estados dependendo dos estmulos que o mesmo recebe; Se houverem mudanas nas caractersticas do objeto que modifiquem a maneira como o objeto reage aos estmulos externos, dizemos que houve uma mudana no estado do objeto.
Conceitos bsicos de Orientao a Objetos 44

Exerccio proposto 5
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Cite quais estados possveis voc percebe para os objetos da classe obra da biblioteca?

Conceitos bsicos de Orientao a Objetos

45

Objetos (ii)
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Um objeto tem identidade, estado e comportamento; A estrutura e comportamento dos objetos so definidos na sua classe; Cada objeto de uma dada classe chamado de instncia da classe; Podemos ter mltiplas instncias de uma nica classe.
Conceitos bsicos de Orientao a Objetos 46

Atributos dos Objetos (i)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

As caractersticas dos objetos so representadas por seus atributos; Atributos so caractersticas, variveis ou constantes encapsuladas nos objetos; Exemplo: Atributos do automvel
Cor, nmero de portas, potncia, ...

Conceitos bsicos de Orientao a Objetos

47

Atributos dos Objetos (ii)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Todos os objetos de uma mesma classe tm as mesmas quantidades e tipos de atributos, mas os valores destes atributos nos diferentes objetos podem ser diferentes ; Exemplo:
Todo automvel tem o atributo cor, mas cada automvel individual poder ter uma cor diferente do outro.
Conceitos bsicos de Orientao a Objetos 48

Atributos na UML
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Nome da classe
Conta - NomeCorrentista

Atributos

- Saldo

Conceitos bsicos de Orientao a Objetos

49

Exerccio proposto 6
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Quais seriam os principais atributos de um usurio da biblioteca?

Conceitos bsicos de Orientao a Objetos

50

Operaes dos objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Os procedimentos internos (ou rotinas) dos objetos so as operaes dos mesmos; As operaes podem manipular os atributos internos de um objeto; As operaes podem ser ativadas por estmulos externos (usurio ou outro objeto) ou internos (operaes do prprio objeto); Operaes definem o comportamento dos objetos.
Conceitos bsicos de Orientao a Objetos 51

Operaes na UML
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Conta - NomeCorrentista - Saldo

Operaes

+ Depositar() + Sacar()

Conceitos bsicos de Orientao a Objetos

52

Exerccio complementar 2
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Explique o que so mtodos dos objetos, de acordo com o texto complementar 1. Qual a diferena (de acordo com o autor) entre operao e mtodo?

Conceitos bsicos de Orientao a Objetos

53

Objetos (iii)
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objetos podem ser definidos como entidades individuais, que tm um conjunto de atributos prprios encapsulados no objeto e um conjunto de operaes internas que utilizam e modificam estes atributos; Os atributos e operaes de um objeto so definidos em sua classe geradora.
Conceitos bsicos de Orientao a Objetos 54

Visibilidade de atributos e operaes


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Atributos e operaes dos objetos podem ser visveis externamente, ou seja, outros objetos podero acessar os atributos e operaes destes objetos sem restries. Estes atributos e operaes so ditos pblicos; Atributos e operaes que s podem ser acessados por operaes internas ao prprio objeto so ditos privados.
Conceitos bsicos de Orientao a Objetos 55

Visibilidade na UML
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Visibilidade Privativa (-)

Conta - NomeCorrentista - Saldo + Depositar() + Sacar()

Visibilidade Pblica (+)

Conceitos bsicos de Orientao a Objetos

56

Interface da classe e seus objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

As operaes pblicas de uma classe definem a interface da classe; Deve ser definido o nome das operaes, se tem tipo de retorno, e se recebe parmetros. A este conjunto de informaes sobre a operao d-se o nome de assinatura da operao.

Conceitos bsicos de Orientao a Objetos

57

Interface da Classe
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Conta - NomeCorrentista - Saldo

As operaes pblicas da classe so a interface da mesma

+ D e p o s i t a r () + S a c a r () - VerificaCategoria()

A operao privativa no faz parte interface da classe, pois no pode ser acessada externamente
Conceitos bsicos de Orientao a Objetos 58

Exerccio proposto 7
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Uma classe pode ter todos os seus atributos privativos? Explique. Uma classe pode ter todos os seus mtodos privativos? Explique.

Conceitos bsicos de Orientao a Objetos

59

Classes e Objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Quando uma sub-classe herda caractersticas de uma super-classe, a mesma est herdando os atributos e operaes; Novos atributos e operaes podem ser acrescentados na sub-classe, diferenciandoa assim de outras sub_classes da mesma super-classe.
Conceitos bsicos de Orientao a Objetos 60

Texto complementar 2
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Leia agora um outro pedao do primeiro captulo do livro OMT nas pginas a seguir.

Conceitos bsicos de Orientao a Objetos

61

Exerccio complementar 3
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

De acordo com o texto lido, quais so os quatro principais conceitos que caracterizam a orientao a objetos?

Conceitos bsicos de Orientao a Objetos

62

Agregados de objetos
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Agregao por composio:


Quando vrios objetos juntos formam um outro que o agregado de todos os outros;

Agregao simples:
Quando um objeto est dentro do outro, colado ao outro, mas no colabora na formao ou existncia deste;

Conceitos bsicos de Orientao a Objetos

63

Objetos agregados compostos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objetos podem ser resultantes da composio de vrios outros objetos; Exemplo: O automvel um objeto composto de outros objetos 4 pneus + chassis + carroceria + bancos + vidros + motor + ......

O objeto composto um agregado de outros objetos.


Conceitos bsicos de Orientao a Objetos 64

Objetos agregados simples (por contedo)


Se estivermos transportando caixas com livros dentro de um automvel (objeto), podemos dizer que os livros (objetos) esto dentro (agregados) das caixas (objetos) que por sua vez esto dentro do automvel, mas no so parte integrante do automvel.

Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Conceitos bsicos de Orientao a Objetos

65

Agregao simples na UML


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)
Class name Attribute: Operation:

Class name Attribute: Operation:

Class name Attribute: Operation:

Conceitos bsicos de Orientao a Objetos

66

Relacionamentos entre objetos


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Objetos relacionam-se; As relaes podem ser estticas ou dinmicas; A agregao uma relao esttica, no envolve nenhum tipo de comunicao entre os objetos; Um motorista acelerando um automvel uma relao dinmica; Uma mala dentro do automvel uma relao esttica.
Conceitos bsicos de Orientao a Objetos 67

Ambientes de desenvolvimento (com suporte OO)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Visual Studio (Microsoft)


Visual C++, Visual J, VB,Visual Modeler (UML).

Jbuilder Delphi Outros.....

Conceitos bsicos de Orientao a Objetos

68

Ferramentas CASE (com suporte a UML)


Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

Rational Rose; System Architect; Paradigm Plus; Cool Jex; ............

CASE: Computer Aided Software Engineering


Conceitos bsicos de Orientao a Objetos 69

Links de interesse
Elaborado por: Fbio Bianchi Campos (fabio@mastersoft.com.br)

www.rational.com (ferramenta rational rose e norma UML) www.omg.org (norma UML)

Conceitos bsicos de Orientao a Objetos

70