Вы находитесь на странице: 1из 49

Abstrao

Professor: Herriot
O que uma abstrao?
Abstrao o processo mental de separar um ou mais
elementos de uma totalidade complexa de forma a facilitar a
compreenso;
Menos detalhes;
Seleo de detalhes especficos;
Os que me interessam, que fazem sentido para o que est sendo
estudado;
Algo chamado de abstrato quando no existe em nenhum
lugar particular no tempo e espao;
A retirada de certos elementos cria algo que no existe realmente;
Se isso existir, ento no uma abstrao, uma instncia do que
seria a abstrao;
Exemplo de abstrao
Mulher;

Nada abstrato;
Muitos detalhes;
Eliminar detalhes para facilitar a compreenso do que quero;
Abstrao: Mulher
Pouco abstrato;

Ainda consigo identificar tamanho do cabelo, cor da pele,


cor dos cabelos, expresso facial, e outros detalhes;
Ainda uma instncia;
Abstrao: Mulher
Bastante abstrato;

Nvel de abstrao elevado, mas ainda possvel ver muitos


detalhes que no so tpicos de todas as mulheres (cabelo
escuro, curto);
Mais distante de ser uma instncia;
Abstrao: Mulher
Muito abstrato;

J no se pode identificar exatamente cor dos olhos,


cor do cabelo;
J muito abstrato, mas ainda pode se tornar mais
abstrato ainda;
Abstrao: Mulher
Super abstrato;

Usar cone;
Passa a ideia de que feminino;
O lao no aparecia na imagem original, mas foi usado
para reforar a abstrao;
Qual outro exemplo de abstrao de mulher?
Treinando
01) Descubra as marcas representadas pelas
abstraes a seguir:
1 2 3 4 5

Pepsi Mortal Kombat Dove Kibon Ferrari

6 7 8 9 10

Gina Victorias Secret Mercedes-Bens XBOX Calvin Klein

11 12 13 14 15

Banco do Fairy Tail Natura Pringles Amigos da Escola


Nordeste
Treinando
02) Descubra o que est sendo abstrado com as
imagens a seguir:

1 2 3 4 5

Cheetos Coca-Cola Lego Adidas Redbull

6 7 8 9 10

Nickelodeon m&ms McDonalds Michelin Pixar


Treinando
Coloque seus dotes artsticos em ao e crie
abstraes para dois (2) elementos de sua
preferncia, e depois crie uma abstrao para Perigo!
Outro exemplo de Abstrao
Abstrao: Clula;
Usamos muito as abstraes porque difcil de
entender o mundo real;
Como explicar o funcionamento de uma clula do corpo
humano?
A foto de uma clula pode me mostrar como ela
exatamente, mas fica mais difcil de focar naquilo que
me interessa;
Abstrao: Clula
Fazer um desenho:
Destacar os elementos que me interessam;
Cores no so verdadeiras;
Estruturas esto partidas ou foram omitidas;
Explicando abstrao
O que uma abstrao?
Uma ideia;
Um conceito;
Que vai ser representado de alguma maneira;
Uma abstrao no existe no mundo real;
Mundo real muito complexo para se entender;
No existe no mundo real, mas pode ser representada;
Estratgia de criao
Simplificao de detalhes;
Os detalhes so abandonados porque so:
Vagos;
Ambguos;
Indeterminados;
O que um detalhe?
Normalmente considerado detalhe algo que no interessante
para o meu estudo;
O que desnecessrio para a minha abstrao pode ser
indispensvel para uma outra;
Ex.: agncia de modelos precisa saber a altura de seus (suas)
candidatos(as), enquanto que para uma universidade, a altura dos
professores indiferente;
Treinando
Considerando que voc est informatizando um
parque de diverses e agora voc far uma
abstrao de pessoas que vo ao parque. Cite pelo
menos trs (3) detalhes que podem ser retirados de
sua abstrao e dois (2) que precisam ser
considerados;
Variao na abstrao
Um mesmo objeto do mundo real pode ser abstrado
de diferentes formas;
A necessidade atual define do que a abstrao vai
precisar;
A lgica (computacional) de quem cria a abstrao
influi no que vai ser considerado na abstrao;
A modelagem a ser usada tambm impe regras sobre
o que ser abstrado;
Diferentes abstraes
Uma frmula matemtica, um conjunto de nmeros,
podem ser abstrados de diversas formas;
Diferentes abstraes
Mapas;
So as abstraes que mais vemos;
Mapa do Brasil;
Sem cidades e estados;
Sem populao;
Sem relevo;
S Vegetao Natural;
Diferentes abstraes
Mesmo mapa do Brasil, mas abstraindo as atividades
econmicas;
Diferentes abstraes
Temperatura e precipitao;
Para uma mesma abstrao, eu posso ter diferentes
representaes (cores diferentes, escalas distintas);
Treinando
Crie trs (3) abstraes diferentes para Pessoa
mostrando detalhes dela que precisam ser levados
em conta considerando as seguintes condies do
mundo real:
Vendedor;
Modelo;
Aluno;
Agora crie mais uma abstrao diferente das trs
anteriores;
Em resumo
Como criar uma abstrao?
Eliminar detalhes que aumentam a complexidade
inutilmente;
Utilizar detalhes que facilitam a compreenso;
Escolher a forma mais interessante e til de
representao;
Tipos bsicos de abstrao

Classificao

Agregao
Classificao
Na abstrao que fazemos, sempre pensamos no objeto
como sendo parte de um conjunto, membro de uma
categoria (classe);
membro de...
do tipo...
Usando essa lgica, ns eliminamos a individualidade, e
passamos a trabalhar com todo o grupo;
Consideramos o objeto como um exemplar de uma classe
padro;
padro
Aceitamos que esse objeto, que agora uma instncia da
classe, possui as mesmas caractersticas que todas as outras
instncias da classe;
Classificao
Na classificao, o que fazemos imaginar uma ideia nica
que descreve, de forma abstrata, todos os objetos de uma
classe;
No mais necessrio tratar cada um dos objetos
individualmente;
A complexidade gerada pela enorme quantidade de objetos
diminuda;
Ao eliminar a necessidade de tratar cada objeto de forma
nica, ento estamos simplificando o problema em questo;
Todas as instncias tm mesmas caratersticas, logo podem
ser tratadas da mesma forma;
Classifiao: exemplos
Banco;
Banco
Bradesco, Banco do Brasil, Ita, Santander, BNB;
Ao falar Banco, eu no preciso mais repetir todas as
vezes todos os nomes de bancos existentes;
Pas;
Pas
Brasil, Itlia, Romnia, Estados Unidos, Argentina,
Grcia;

Banco e Pas so abstraes nos nossos exemplos, e


funcionam como classes;
Classificao: exemplo
Apesar das diferenas, ns buscamos as semelhanas
que tornem os objetos membros de uma mesma
classe;
Raa, cor, pedigree (diferenas);
Andam sobre 4 patas, latem, focinho (semelhanas);

Cachorro
Classificao: Instanciao
Sempre que instituda uma forma de abstrao,
preciso desenvolver um mecanismo de reverso para
isso;
O processo reverso da Classificao a Instanciao;
Saio da ideia abstrata e passo para a ideia de mundo
real;
Instanciao o processo de escolher um objeto de
uma classe;
Tambm pode ser chamada de Individualizao;
Instanciao: exemplo
CLASSE Instanciao

Estudante de
Graduao

INSTNCIA

Joo Maria
Classificao
Treinando
Qual a classe pra essas instncias?
Glria Pires, Rosana Jatob, Luciano Huck;
Casa, Condomnio, Flat;
Aurlio Miguel, Dilma Rousseff, Tiririca;

Crie duas (2) instncias para essas classes:


Atleta;
Cadeira;
Camisa;
Agregao ou Composio
outro tipo de abstrao;
O todo entendido pela composio de suas partes;
E no cada parte separadamente;
Frases que identificam esse tipo de abstrao:
feito de...
composto de...
Na agregao, entendemos que vrios objeto mais simples
compem um nico objeto mais complexo;
como vemos um carro ou uma bicicleta: ao eliminar a
necessidade de descrever todas as partes, simplificamos a
compreenso do objeto estudado;
Imagina ter de citar todas as partes numa compra?
Composio: exemplo
Carro:
Pneu;
Motor;
Assentos, etc;
O carro composto pelas partes;
Composio: Decomposio
o inverso da Composio;
Ao fragmentar o todo, obtemos as suas vrias partes;
Mais tipos de abstraes
Todo processo de abstrao acaba por usar a
Classificao e a Composio;
Algumas situaes exigem outros tipos de
abstraes:
Generalizao;
Identificao;
Escolha do Caso Normal;
Generalizao
Muito parecida com a Classificao;
Na Generalizao ns vamos ver vrias classes como
uma s classe;
Com a generalizao, ns podemos entender como uma
classe pode ser descrita por uma outra classe mais geral;
Uma ou mais classes sendo descritas por uma classe mais
geral;
O inverso da Generalizao a Especializao;
Especializao:
Especializao voc separa, dentro da classe, alguns
objetos que tm algumas especificidades em comum e cria
uma nova classe com esses objetos;
Generalizao: exemplos
Pessoa:
Funcionrio, aluno, professor;
Meio de Transporte:
Automvel, Avio, Navio;
Aparelhos Eletrnicos:
Computador, Rdio, Televiso;
Classes
Gerais
Pessoa Funcionrio, Aluno, Professor

Meio de Transporte Automvel, Avio, Navio


Classes
Aparelhos Eletrnicos Especializadas Computador, Rdio, Televiso
Especializao: exemplo longo
Meios de Transporte

Meios de Transporte Terrestres

Meios de Transporte Terrestres Pblicos

Meios de Transporte Terrestres Pblicos em Vias Frreas

Trem
Trem Metr
Metr Bonde
Bonde
Treinando
Faa a especializao da classificao dos seres vivos
de acordo com a biologia, mostrando objetos de cada
uma das classes que voc vai gerar.
REFICOFAGE
Reino
Reino
Filo
Filo
Classe
Classe
Ordem
Ordem
Animalia Famlia
Famlia
Gnero
Gnero
Chordata Espcie
Espcie
Mammalia
Felidea
Carnivora Felis
Felis Catus
Generalizao x Classificao
Classificao
Vrios objetos pertencem a uma classe;
Objetos semelhantes so abstrados para uma mesma
classe;
Generalizao
Vrias classes com caractersticas semelhantes geram
uma classe mais geral;
Cada classe ainda tem seus prprios objetos;
Efeitos sobre os objetos
Com a generalizao,
generalizao podemos compreender uma relao muito
comum entre classes, que a que permite que qualquer objeto de uma
classe possa ser visto, de uma forma mais geral, como um objeto de
outra classe;
Utilizando cuidadosamente a generalizao, podemos simplificar a
forma de tratar objetos de classes similares;
Objetos de classes diferentes podem estar sujeitos aos mesmos
processos. Com a generalizao, possvel aplicar um processo
uma nica vez sobre a classe mais geral;
Se um processo atua em apenas parte dos objetos de uma classe,
ento possvel especializar esses objetos em uma nova classe
para que o processo atue apenas nos objetos corretos;
Professor e Funcionrio recebem salrio. Alunos no recebem, mas
todos so Pessoas;
Nveis de Especializao
Toda vez que criada uma nova especializao para
uma classe, estamos aumentando o nvel de
especializao;

Pessoa
Pessoa Classe Geral

Aluno
Aluno Nvel 1

Aluno
Aluno de
de Nvel 2
Ps
Ps

Mestrando
Mestrando Doutorando
Doutorando Nvel 3
Treinando
01) Como poderamos Generalizar (s para fins de
treino) as classes abaixo:
Pessoa, Cadeira, Cachorro;
Resposta!
02) Crie 3 Especializaes de mesmo nvel para as
seguintes classes:
Transporte Marinho;
Meio de Comunicao;
03) Crie uma abstrao com 2 nveis de
Especializao;
Identificao
Esse tipo de abstrao serve para relacionar um objeto do
modelo com um objeto do mundo real;
preciso criar uma maneira de identificar esse objeto;
Um nome poderia identificar uma pessoa;
Com a Identificao, ns somos capazes de entender como
caracterizar unicamente um objeto;
Preciso saber especificamente sobre Joo Pedro (objeto), e
no mais sobre todos os Alunos (classe);
Ao identificar unicamente um objeto, podemos separ-lo dos
outros objetos semelhantes e detalhar atributos e
caractersticas que s pertencem a este objeto e no pertencem
aos outros elementos daquela classe;
Instncia x Identidade
H uma diferena entre instanciar e identificar;
Uma instncia deve possuir uma identificao, e uma
identificao se aplica a uma instncia;
Instncia no tem valor;
Identificao tem valor;
A identificao permite que duas instncias sejam
reconhecidas como distintas:
Se mais de uma identificao leva para a mesma instncia,
escolher novo identificador;
Se um identificador leva a mais de uma instncia, escolher
novo identificador ou juntar as instncias em uma s;
Treinando
01) Crie trs abstraes e processo de formao
escolhido para criar cada uma delas, e depois mostre
uma instncia e a identidade dessa instncia;
02) Para as abstraes abaixo, cite um bom
identificador para cada uma:
Carro;
Sala de Aula da FIP;
Conta-Corrente;
Escolha do Caso Normal
O mundo real muito complicado;
H vrias formas de fazer a mesma coisa;

Muitas coisas so feitas normalmente (ou idealmente) de


forma fcil, porm elas esto sempre sujeitas a excees e
tratamentos especiais;
Trajeto de casa at a faculdade (buracos, ruas
interditadas, chuva, ...);
Comeamos sempre pelo modo mais fcil que o Cenrio
Feliz;
Feliz
Ao pensar na rota para a faculdade, ns no pensamos

nos buracos e desvios, sempre imaginamos a melhor


situao, o Caso Normal;
Normal
Caso Normal quando se elege o atributo mais trivial que
identifica de forma nica cada elemento de uma classe;
Caso Normal: exemplo
Identificando uma pessoa:
Normalmente precisamos apenas do nome da pessoa para
identific-la;
Mas existem pessoas com nomes iguais;
Vamos usar o CPF para identificar;
Mas existem pessoas sem CPF;
Vamos usar o nome da pessoa, do Pai, da Me, e um CPF
para identificar esta pessoa;
Mas assim fica muito complicado;
Vamos gerar um nmero de matrcula nico por pessoa;
S o Nome seria o Caso Normal,
Normal ento tivemos de trabalhar as
complexidades;
Concluso
Abstraes permitem que os problemas e solues
sejam tratados de maneira adequada;
Abstraes eliminam detalhes indesejados e
desnecessrios;
Abstraes reforam detalhes importantes;
Treinando
Crie uma abstrao com pelo menos trs (3) nveis
de classes especializadas, gerando instncias para
cada classe. Depois mostre como seria a formao da
classe geral se ela fosse criada por Classificao e se
fosse criada por Agregao.

Вам также может понравиться