300 likes | 778 Views
Disciplina: Programação Estruturada e Orientada a Objetos Aula 1 Orientação a Objetos Apresentação do paradigma Orientado a Objetos . Alicerce da POO: Herança, Encapsulamento e Polimorfismo. Professor: Jorge Felliphe | Jorge.Barbosa@ifrn.edu.br. Apresentação.
E N D
Disciplina: Programação Estruturada e Orientada a Objetos Aula 1 Orientação a Objetos Apresentação do paradigma Orientado a Objetos. Alicerce da POO: Herança, Encapsulamento e Polimorfismo. Professor: Jorge Felliphe| Jorge.Barbosa@ifrn.edu.br
Apresentação O paradigma orientado a objetos foi idealizado quando se pensou em programar/implementar sistemas de modo mais simples e abstrato, tentando aproximar o código (trabalho de desenvolvimento) do mundo real.
Vantagem Frente ao paradigma estruturado, a POO (Programação Orientada a Objetos) destaca-se pela grande abstração e facilidade de reuso e expansão/manutenção. Modelar o mundo real e seu comportamento, abstraindo-o em OBJETOS é mais prático do que focar em FUNÇÕES E BIBLIOTECAS...
O que seria mais simples dizer? “Amanhã irei abrir a porta daquele veículo movido a combustível, entrarei, me sentarei, darei a partida no motor, pisarei na embreagem, engatarei a primeira marcha, acelerarei, controlarei a direção em que o carro irá se mover utilizando o volante ao mesmo tempo em que passarei as marchas de acordo com a velocidade até chegar ao meu trabalho, onde, através da chave da ignição o desligarei quando estiver parado na devida vaga do estacionamento”. Ou “Vou usar o meu carro para ir ao trabalho amanhã”
Abstração Na POO, graças a sua ideologia, podemos abstrair as informações e pensar de forma simplificada que a mensagem continuará a ser compreendida! CLASSE em POO é um “molde” do que temos no mundo real e desejamos programar, onde, à partir dela, instanciaremos (criaremos) os OBJETOS.
Classe e Objetos CLASSE Carro Variáveis Internas (ATRIBUTOS) Comportamentos (MÉTODOS) OBJETOS (instâncias) Imagine que desejamos programar o carro:
Na prática, temos: Carro C1 -ATRIBUTOS (características próprias): Relâmpago McQueen, vermelho, 2010, 500 kg, 2,1 m, 3,4 m, false. -MÉTODOS: comportamentos de um carro. Classe (“molde”) Atributos (variáveis) Carro C2 -ATRIBUTOS (características próprias):Mater, marrom, 1815, 800,5 kg, 2,9 m, 4,5 m, true. -MÉTODOS: comportamentos de um carro. Métodos (comportamento)
Hora de praticar! Vamos tentar implementar esta classe Carro ao lado e, dentro do main iremos instanciar dois carros e chamar suas funcionalidades (métodos)!
Programação Orientada e Objetos • Os três pilares da POO são as seguintes características/práticas: • Herança: • Classes/Objetos podem herdar características de uma classe-“principal” (classe-mãe). Vantagem: ? • Encapsulamento • Classes/Objetos e suas funcionalidades/comportamento são implementadas e disponibilizadas de forma transparente para o programador, de modo que o mesmo não precise ler o código para entender o comportamento, mas apenas se preocupe em saber o que deve enviar para a classe e que ele pode receber dela. • Polimorfismo • Capacidade de uma mesma funcionalidade (método) assumir comportamentos distintos, ou seja, várias formas (poli-formas).
Atividade! • Vamos implementar o conceito de herança: • Crie uma classe-“principal” (classe-mãe) denominada Automovel e crie 5 classes- “secundarias” (classe-filha) que herdam os atributos e métodos de Automovel. Elas podem se chamar Carro, Bicicleta, Moto, Barco e Aviao. • Tecnicamente dizemos que a classe Automovel é super classe de Carro, Bicicleta, Moto, Barco e Aviao, pois estas herdam a classe Automovel.