Baixe o app para aproveitar ainda mais
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.
Compartilhar