Buscar

PROGRAMAÇÃO ORIENTADA À OBJETO

Prévia do material em texto

16/02/2020 
1 
UNIDADE 1 
 A Programação Orientada a Objetos (POO) surgiu 
com a finalidade de facilitar a vida daqueles que 
trabalham com desenvolvimento de software, pois 
na POO o difícil não é desenvolver bem um 
software, mas sim desenvolver um software que 
satisfaça o cliente, ou seja, garantir que o que será 
entregue será realmente o que foi pedido. 
 A POO trabalha utilizando classes, ela é quem dá a 
vida ao objeto, pois nela é que são criadas as 
funcionalidades através dos métodos, dizendo se o 
objeto vai andar parar rodar, etc., e suas 
especificidades através dos atributos, sua cor, seu 
nome, etc.. a classe não é o objeto, ela é utilizada 
para construí-lo. 
Características 
Cor 
Combustível 
Num_Portas 
Potencia 
Comportamentos 
Acelerar 
Feiar 
Acender farol 
Dar seta 
Buzinar 
Características 
Cor 
Combustível 
Num_Portas 
Potencia 
Capacidade Carga 
Comportamentos 
Acelerar 
Feiar 
Acender farol 
Dar seta 
Buzinar 
Acionar Freio-Motor 
Características 
Peso 
Cor 
Tamanho tela 
Processador 
Memória 
Comportamentos 
Ligar 
Desligar 
Ligar Wireless 
Desligar Wireless 
16/02/2020 
2 
 Surgiu da necessidade de simular a realidade, 
criando abstrações na tentativa de 
representar as características relevantes dos 
objetos envolvidos no sistema que se deseja 
desenvolver. 
 Com o uso da OO, a engenharia de software 
conseguiu avançar na habilidade de modelar 
e projetar softwares que representam os 
problemas do mundo real no mundo 
computacional. 
 programação orientada a objetos no que diz respeito aos 
dados. No caso da orientação a objetos, temos métodos que 
são aplicados aos dados de cada objeto. Essencialmente, os 
procedimentos e métodos são iguais, sendo diferenciados 
apenas pelo seu escopo. 
 programação estruturada. Se trata de uma linguagem 
considerada de baixo nível, que atualmente não é utilizada 
para projetos muito grandes. A sua principal utilização, 
devido ao baixo nível, é em programação para sistemas 
embarcados ou outros em que o conhecimento do hardware 
se faz necessário para um bom programa. 
16/02/2020 
3 
 Forte suporte para o encapsulamento dos 
dados e da lógica dentro de um componente 
que chamamos de objeto. 
 Essas propriedades tornam-se mais 
importantes quando os programas se tornam 
grandes, pois com a orientação a objetos fica 
mais fácil de dar manutenção no código. 
 
 Orientação a objetos tem suas origens na 
linguagem SIMULA 67, a qual introduziu os 
conceitos de classes e objetos. 
 Mas foi a linguagem SmallTalk (1980) que a 
orientação a objetos ganhou força. 
 Outras linguagens: C++, Object Pascal, PHP, 
Java, C# .... 
 O Java é, muito provavelmente, a linguagem de programação 
mais utilizada no mercado atual. Auxiliado pela presença do 
JRE (Java Runtime Environment), ou variações dele, em quase 
todos os dispositivos eletrônicos do momento, a linguagem 
Java é um grande sucesso entre os desenvolvedores. 
 O C++, por sua vez, é uma linguagem um pouco mais 
primitiva, e permite muito mais liberdades com o hardware. 
Como ele foi derivado imediatamente do C, o C++ permite a 
utilização de ponteiros, por exemplo, que irão trabalhar 
diretamente com a memória. Além disso, o C++ pode utilizar 
todas as bibliotecas C que existem diretamente. Em termos 
de abstração, o C++ implementa classes, assim como 
qualquer linguagem orientada a objetos. 
 
16/02/2020 
4 
Classes 
Objetos 
Abstração 
Encapsulamento 
Herança 
Polimorfismo 
 
É o molde para a criação de objetos. 
 Define o comportamento e os atributos dos 
seus objetos. 
Exemplo: 
Planta de uma casa 
 
É a instâncias da classe em memória. 
 Possui todas as características definidas 
previamente na classe. 
 Se comunicam através da troca de 
mensagens. 
Exemplo: 
A casa construída 
 Identificar todas as informações que 
atendem a aplicação e ignorar as 
informações irrelevantes. 
 
 
Dados 
abstraidos 
Objeto Pessoa 
16/02/2020 
5 
 Permite que os atributos e os métodos sejam 
empacotados dentro de uma classe. 
 
 Mecanismo para proteger os atributos. 
 Atributos são manipulados apenas pelos métodos 
públicos. 
 
 Permite reutilizar a definição de um tipo de 
objeto para definir outro tipo de objeto. 
 
 
Capacidade de objetos de diferentes tipos responder 
a métodos com o mesmo nome, cada um de 
acordo com seu próprio comportamento. 
 
 Classe: modelo para descrever objetos. 
 Objeto: entidade que possui atributos e 
métodos. 
 Abstração: selecionar informações 
importantes para a aplicação. 
 Encapsulamento: empacotar atributos e 
métodos dentro da classe. 
 Instância: objeto instanciado na memória. 
16/02/2020 
6 
 Método: procedimento ou função que 
implementa uma operação. 
 Mensagem: requisição para executar um 
método do objeto. 
 Herança: definir nova classe a partir de uma 
classe previamente definida.

Continue navegando