Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Espaço-estado e Comportamento
2
Alguns conceitos e propriedades de classes:
Espaço-estado Comportamento Invariantes Pré-condições e pós-condições Espaço-estado e comportamento
3
Espaço-estado e comportamento
Uma classe deve representar uma abstração uniforme das propriedades dos objetos individuais que pertencem a essa classe Abstração: nem toda propriedade Uniforme: cada objeto Propriedades: espaço-estado e comportamento Espaço-estado e comportamento
4
Comportamento da rainha Comportamento do cavalo
Jogo de Xadrez: 8 Comportamento da rainha 7 6 5 4 Comportamento do cavalo 3 2 1 a b c d e f g h Espaço-estado: todas as casas do tabuleiro Comportamento: diferentes Espaço-estado e comportamento
5
(mas espaço-estado diferente) 3 2 1 a b c d e f g h
8 7 6 5 4 Mesmo comportamento de um cavalo normal (mas espaço-estado diferente) 3 2 1 a b c d e f g h Cavalo não tem permissão para se posicionar no centro do tabuleiro Espaço-estado e comportamento
6
Espaço-estado e comportamento
O espaço-estado de uma classe C é a totalidade de todos os estados permitidos de qualquer objeto da classe C. As dimensões de um espaço-estado são as coordenadas necessárias para especificar o estado de um dado objeto. Espaço-estado e comportamento
7
Espaço-estado de uma linha de produtos:
peso LinhaDeProduto. quantidadeDisponível LinhaDeProduto.preço Espaço-estado e comportamento
8
Espaço-estado de uma subclasse
Se B é uma subclasse de A, então o espaço-estado de B deve estar contido inteiramente dentro do espaço-estado de A. O espaço-estado de B é confinado pelo espaço-estado de A. Espaço-estado e comportamento
9
Ex: automóvel e veículoRodoviário
Espaço-estado de Automóvel Espaço-estado de VeículoRodoviário pesoAtual 1 2 3 4 5 6 7 8 9 Espaço-estado e comportamento
10
Subclasse com mais dimensões!
Se B é uma subclasse de A, então o espaço-estado de B deve compreender, no mínimo, as dimensões do espaço-estado de A – mas ele pode compreender mais dimensões. Se compreender mais dimensões, dizemos qe o espaço-estado de B prolonga-se a partir do espaço-estado de A. Espaço-estado e comportamento
11
Automóvel X veículoRodoviário
contagemAtual DePassageiro 5 4 Espaço-estado de Automóvel Espaço-estado de VeículoRodoviário 3 2 1 pesoAtual 1 2 3 4 5 6 7 8 9 Espaço-estado e comportamento
12
Comportamento de uma subclasse:
O comportamento permitido de uma classe C é o conjunto de transições que um objeto da classe C pode fazer entre estados do espaço-estado de C. Espaço-estado e comportamento
13
Espaço-estado e comportamento
Para as subclasses: O confinamento e o prolongamento valem também para o comportamento de superclasse e subclasse ?? “SIM” Espaço-estado e comportamento
14
Por exemplo: Prolongamento
Automóvel: apanharPassageiro deixarPassageiro VeículoRodoviário ?? Espaço-estado e comportamento
15
Espaço-estado e comportamento
… confinamento: VeículoRodoviário: Aumentar + 5 toneladas! Automóvel: Aumentar + 5 toneladas XXXX (não é permitido!) Espaço-estado e comportamento
16
Espaço-estado e comportamento
Invariante de classe: O espaço-estado válido de uma classe é definido pela sua invariante de classe: Uma invariante de classe é uma condição que todo objeto dessa classe deve sempre stisfazer (quando o objeto está em equilíbrio) Espaço-estado e comportamento
17
Ex: classe Triângulo a + b > c and b + c > a and c + a > b a
Nem todas as posições de a, b e c são válidas! c b Parte da Invariante: a + b > c and b + c > a and c + a > b Espaço-estado e comportamento
18
‘Variedade de Triângulos’:
a=b or b=c or c=a a2 + b2 = c2 Triângulo Retângulo Triângulo Isósceles Triângulo IsóscelesRetângulo Espaço-estado e comportamento
19
Pré-condições e Pós-condições:
Invariantes de operações individuais (e não de classes): Precondição Pós-condição Ex: Pilha.eliminar Pré-condição: not vazia Pós-condição: (numDeElem = old numDeElem – 1 ) and not completa Espaço-estado e comportamento
20
Pré-condição em escalaHorizontal: Pós-condição em escalaHorizontal:
Ex de um Retângulo: Retângulo escalaHorizontal (fatorDeEscala) Invariantes: w1 = w2 and h1 = h2 Pré-condição em escalaHorizontal: larguraMáximaPermitida > w1 * fatorDeEscala Pós-condição em escalaHorizontal: w1 = old w1 * fatorDeEscala Espaço-estado e comportamento
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.