programação orienta a objetos - pense mais, escreva menos e melhor
DESCRIPTION
Palestra ministrada na Unipar de Guaíra em 07/11/2012TRANSCRIPT
![Page 1: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/1.jpg)
Programação Orientada a Objetos
Pense mais, escreva menos e melhor
Robson Alécio Somera
[email protected]@robson_alecio
facebook.com/robson.alecio
![Page 2: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/2.jpg)
#PalestraOOUniparGuaira
![Page 3: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/3.jpg)
Linguagem de Programação
![Page 4: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/4.jpg)
Linguagem de programação é o que nós usamos para nos comunicar
com uma máquina de forma que ela realize o trabalho que precisamos
que ela faça.
![Page 5: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/5.jpg)
Mas é só a máquina que nos comunicamos?
![Page 6: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/6.jpg)
Níveis de linguagens
![Page 7: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/7.jpg)
Escrevemos código para
nos comunicar
com pessoas
![Page 8: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/8.jpg)
Será que conseguem entender o código que escrevemos?
![Page 9: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/9.jpg)
Será que o código que escrevemos faz sentido?
![Page 10: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/10.jpg)
Quantas linhas de código que vão para
produção um programador escreve
por dia?
![Page 11: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/11.jpg)
10 a 12 fonte
![Page 12: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/12.jpg)
Sabe o que ele faz no resto do tempo?
![Page 13: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/13.jpg)
Pensa!
![Page 14: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/14.jpg)
Sobre o que?
Código!
![Page 15: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/15.jpg)
Programar não é apenas escrever código, mas também como e porque ele é escrito.
![Page 16: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/16.jpg)
Programar está mais Programar está mais para arte do que para para arte do que para
ciênciaciência
![Page 17: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/17.jpg)
Será que tem diferença entre como vemos o que
escrevemos e o que os outros escrevem? E vice-versa?
![Page 18: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/18.jpg)
![Page 19: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/19.jpg)
Todo código que você lê sempre foi escrito por alguém que é diferente e provavelmente
pior que você é.Seja um colega seu ou você ontem.
![Page 20: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/20.jpg)
![Page 21: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/21.jpg)
Uma coisa é fato:
Código apodrece!
![Page 22: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/22.jpg)
Mas só temos problemas com
código?
![Page 23: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/23.jpg)
![Page 24: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/24.jpg)
Temos também a dificuldade de
transforma o desejo do usuário em
realidade!E usando código para
isso!
![Page 25: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/25.jpg)
![Page 26: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/26.jpg)
E quem sofre está pressão em boa parte é o programador
![Page 27: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/27.jpg)
Tem como resolver isso de maneira fácil?
![Page 28: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/28.jpg)
![Page 29: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/29.jpg)
Então vamos parar com isso!
![Page 30: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/30.jpg)
![Page 31: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/31.jpg)
É aí que entra a É aí que entra a Programação Programação Orientada a Orientada a
Objetos!Objetos!
![Page 32: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/32.jpg)
POO
- É uma técnica de modelagem;- Tem como base a cognição;- Serve para ajudar a modelar o negócio o mais próximo possível do mundo real; (eliminar o “gap-semântico”)
![Page 33: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/33.jpg)
Ponto de Partida
- Classe;- Objeto instância;- Atributo;- Método;- Mensagem;- Associação;
![Page 34: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/34.jpg)
Pirâmide da Pirâmide da Orientação a Orientação a
ObjetosObjetos
![Page 35: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/35.jpg)
![Page 36: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/36.jpg)
![Page 37: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/37.jpg)
![Page 38: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/38.jpg)
![Page 39: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/39.jpg)
![Page 40: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/40.jpg)
Muito legal! Mas como fazer isso
direito?
![Page 41: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/41.jpg)
Testes
![Page 42: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/42.jpg)
Don'tRepeatYourself
![Page 43: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/43.jpg)
![Page 44: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/44.jpg)
![Page 45: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/45.jpg)
E por último, mas não menos importante:
“Tenha em mente que o cara que irá dar manutenção no seu código é um psicopata, que não gosta de você e sabe onde você
qual a sua rotina.”
![Page 46: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/46.jpg)
![Page 47: Programação Orienta a Objetos - Pense mais, escreva menos e melhor](https://reader033.vdocuments.com.br/reader033/viewer/2022052908/5595aef71a28abf23d8b45f5/html5/thumbnails/47.jpg)
Obrigado!