Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi...
-
Upload
nguyenxuyen -
Category
Documents
-
view
225 -
download
0
Transcript of Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi...
![Page 2: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/2.jpg)
Programação Orientada a Objetos x Estruturada
Origem
Conceito
Objetos ◦ Atributos
◦ Métodos
Classes
Herança
Visibilidade
Exercícios
![Page 3: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/3.jpg)
Base: ◦ Sequência: Uma tarefa é executada após a outra,
linearmente. ◦ Decisão: A partir de um teste lógico, determinado trecho
de código é executado, ou não. ◦ Iteração: A partir de um teste lógico, determinado trecho
de código é repetido por um número finito de vezes.
Vantagens ◦ É fácil de entender. Ainda muito usada em cursos
introdutórios de programação. ◦ Execução mais rápida.
Desvantagens ◦ Baixa reutilização de código ◦ Códigos confusos: Dados misturados com
comportamento
![Page 4: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/4.jpg)
Base ◦ Classes e Objetos
◦ Métodos e Atributos
Vantagens ◦ Melhor organização do código
◦ Bom reaproveitamento de código
Desvantagens ◦ Desempenho mais baixo que o paradigma
estruturado
◦ Mais difícil compreensão
![Page 5: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/5.jpg)
![Page 6: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/6.jpg)
Nos anos 70 surge Smalltalk, a primeira linguagem totalmente em Orientação a Objeto (O.O)
C++, evolução de C, já possuía conceitos O.O
Na década de 80 praticamente todas as linguagens já usavam conceitos O.O ◦ Delphi
◦ PASCAL
◦ Java
![Page 7: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/7.jpg)
“Uma nova maneira de pensar os problemas utilizando conceitos do Mundo Real. O componente fundamental é o objeto que combina estrutura e comportamento em uma única entidade” ◦ Raumbaugh
“Sistema orientado a objetos é uma coleção de objetos que interagem entre si” ◦ Bertrand Meyer
![Page 8: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/8.jpg)
![Page 9: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/9.jpg)
![Page 10: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/10.jpg)
Abstração: ◦ Habilidade de se concentrar nos aspectos essenciais
do sistema, ou um contexto qualquer, ignorando o que é supérfluo
![Page 11: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/11.jpg)
O que é: ◦ Representação computacional de algo do mundo
real
Concreto
Abstrato
Abstração ◦ Transformar aquilo que observamos realidade para
a virtualidade
![Page 12: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/12.jpg)
Concretos ◦ Cão
◦ Moto
◦ Casa
Abstratos ◦ Música
◦ Transação Bancária
Modelo ◦ Características + Comportamento
![Page 13: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/13.jpg)
Estado ◦ Atributos (Características)
Operações ◦ Métodos (Comportamentos)
Identidade ◦ Dois objetos com estado e operações precisamente
idênticos não são iguais
Operações podem mudar os valores dos atributos assim mudando o estado de um objeto.
![Page 14: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/14.jpg)
Atributos ◦ Raça: Poodle
◦ Nome: Rex
◦ Peso: 5 quilos
◦ Potência: 500cc
◦ Modelo: Honda
◦ Ano: 1998
Método ◦ Latir
◦ Comer
◦ Dormir
◦ Acelerar
◦ Frear
◦ Abastecer
![Page 15: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/15.jpg)
Cite 4 atributos de um aluno
◦ ????????????
◦ ????????????
◦ ????????????
◦ ????????????
Cite 3 métodos de um aluno
◦ ????????????
◦ ????????????
◦ ????????????
![Page 16: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/16.jpg)
Conjunto de objetos: ◦ Características semelhantes
◦ Comportamento comum
◦ Interação com outros objetos
Uma classe é a forma para criação de objetos
Objetos são representações concretas (instâncias) de uma classe
![Page 17: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/17.jpg)
Gato
New
Gato Raça: Savannah Nome: Gatuno Peso: 2,5 quilos Idade: 2 anos
Gato Raça: Maine Moon Nome: Listrado Peso: 3 quilos Idade: 5 anos
Gato Raça: Siamês Nome: Bichano Peso: 4 quilos Idade: 3 anos
![Page 18: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/18.jpg)
![Page 19: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/19.jpg)
Quais as classes de um banco?
![Page 20: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/20.jpg)
Um objeto, em um programa, “encapsula” todo o seu estado e o comportamento;
Os dados e as operações são agrupados e a sua implementação é escondida, protegida dos usuários;
Programação Orientada a Objetos
Encapsulamento
![Page 21: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/21.jpg)
Programação Orientada a Objetos
Classes em Java
![Page 22: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/22.jpg)
Programação Orientada a Objetos
Herança
![Page 23: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/23.jpg)
Programação Orientada a Objetos
Herança
![Page 24: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/24.jpg)
Programação Orientada a Objetos
Herança
![Page 25: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/25.jpg)
Programação Orientada a Objetos
Herança
![Page 26: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/26.jpg)
Programação Orientada a Objetos
Herança
![Page 27: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/27.jpg)
Programação Orientada a Objetos
Herança
![Page 28: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/28.jpg)
- Private Somente a classe tem acesso
Não é transmitido por herança
~ Defualt ou Friendly Acesso a classe inteira
Visível para as classes do mesmo pacote
Só é transmitido por herança em classes do mesmo pacote
Programação Orientada a Objetos
Visibilidade
![Page 29: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/29.jpg)
# Protected Visível em toda a classe
Visível em todas as classes de um pacote
Transmitido por herança
+ Public Visível irrestritamente
Programação Orientada a Objetos
Visibilidade
![Page 30: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/30.jpg)
Programação Orientada a Objetos
Visibilidade
![Page 31: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/31.jpg)
Programação Orientada a Objetos
Visibilidade
![Page 32: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/32.jpg)
Programação Orientada a Objetos
Exercício O que vai ser transmitido por herança?
![Page 33: Orientação a Objetos - educacional.ciesa.br · linguagem totalmente em Orientação a ... Delphi PASCAL ... Dois objetos com estado e operações precisamente](https://reader031.fdocumentos.com/reader031/viewer/2022022708/5be5ee8a09d3f23a518bfce7/html5/thumbnails/33.jpg)