Baixe o app para aproveitar ainda mais
Prévia do material em texto
Paradigma de Programação Orientado a Objetos Paradigma de Programação Orientado a Objetos O paradigma de programa orientado a objetos é um dos principais e mais utilizados modelos para desenvolvimento de programas. Este paradigma fornece todo formalismo necessário para o desenvolvimento de programas com qualidade, além disso oferece ao programador uma metodologia clara e objetiva para o projeto e codificação da aplicação. Para o desenvolvimento de programas utilizando este paradigma, é necessário o entendimento prévio de um conjunto de conceitos teóricos. Todos esses conceitos podem ser aplicados durante o processo de projeto e codificação da aplicação. 2 Paradigma de Programação Orientado a Objetos Na programação orientada a objetos a codificação do programa é organizada em classes. Uma classe representa um conjunto de códigos que contemplam as informações manipuladas e o comportamento do programa. Na programação orientada a objetos os dados são armazenados em atributos, ao contrário da programação estruturada (e orientada a eventos) em que os dados são armazenados em variáveis. 3 Paradigma de Programação Orientado a Objetos O comportamento do programa é codificado por meio de métodos, que em termos práticos são subprogramas contendo funcionalidades específicas. Uma classe também pode ser entendida como um tipo de dados definido pelo usuário. A partir da definição da classe podem ser criadas instâncias que são chamadas de objetos. Esses objetos reúnem todos os atributos e os métodos, e representam a materialização da definição da classe em uma entidade. 4 Paradigma de Programação Orientado a Objetos Enquanto na programação estruturada toda a aplicação possui uma estrutura monolítica, em que as funcionalidades (procedimentos e funções) e os dados (as variáveis) são organizadas em um único bloco, na programação orientada a objetos é possível a modularização e o desmembramento da aplicação e dos objetos. Na programação orientada a objetos a aplicação é desvinculada aos objetos, assim, uma aplicação pode ter um, ou mais objetos, e esses objetos podem ser criados (instanciados) ou destruídos em tempo de execução. 5 Codificação de Programas Orientados a Objetos Para o desenvolvimento de aplicações utilizando o paradigma orientado a objetos o primeiro passo e abstração do problema do mundo real e o mapeamento em uma ou mais classes. Este processo muitas vezes não é simples, e pode demandar muitas horas de trabalho do programador. Para ilustrar este processo considere, por exemplo, o problema de construir um programa capaz de armazenar informações a respeito de carros. 6 Codificação de Programas Orientados a Objetos O primeiro passo da abstração é verificar quais características o carro possui, e que podem ser transformadas em atributos da classes. Podemos considerar, por exemplo, os seguintes atributos para a classe Carro: placa, cor e ano de fabricação. O próximo passo é mapear quais comportamentos a classe Carro deve possuir. Estes comportamentos são especificados por meio de métodos. Consideramos um Carro podemos definir como métodos: ligar o carro; trocar a marcha; acelerar e brecar. 7 Conceitos Essenciais Abstração Classe Objeto (Instância) Atributo Método Encapsulamento Métodos manipuladores (Set e Get) 8 Restrições de Acessos para Atributos e Métodos Público (Public) Privado (Private) Protegido (Protected) 9 Herança Simples e Múltipla Discutir o conceito de herança como mecanismo para reutilização de código-fonte Interfaces Polimorfismo 10 1 - Exercícios Resolvidos Assinale a alternativa que não contém um conceito fundamental do paradigma de programação orientado a objetos. Atributo Variável Herança Polimorfismo Encapsulamento Resposta B O termo variável é utilizado no paradigma estruturado e orientado a eventos. No paradigma de programação orientado a objetos é utilizado o termo atributo. 11 2 - Exercícios Resolvidos O trecho de código abaixo ilustra qual conceito do paradigma de programação orientado a objetos? public void setIdade(int idade) { this.idade = idade; } Atributo Herança Polimorfismo Encapsulamento Construtor Resposta D O trecho demonstra claramente a utilização do conceito de encapsulamento, em que é definido o método manipulador setIdade. 12 3 - Exercícios Resolvidos No processo de desenvolvimento de um programa de computador, um paradigma de programação representa a metodologia, ou filosofia adotada pelo programador durante o processo de construção da aplicação. Cada paradigma possui suas características específicas, as quais o programador pode explorar durante a elaboração do programa. No paradigma de programação orientado a objetos, toda codificação do programa é organizado em classes. Cada classe representa um conjunto de códigos intrínsecos contendo as informações manipuladas e os seus respectivos comportamentos. Dentro deste contexto, e considerando o paradigma de programação orientado a objetos, assinale a alternativa que não contém um conceito fundamental deste paradigma. Classes, objetos, atributos e métodos. Construtores, encapsulamento, variáveis e polimorfismo. - (CORRETA) Herança simples, restrições de acesso, construtor e interfaces. Abstração, Herança múltipla, polimorfismo e construtor. Restrições de acesso, construtores, herança simples e polimorfismo Correta: B 13 4 - Exercícios Resolvidos A herança é um conceito muito importante da programação orientada a objetos cuja principal característica é a reutilização de classes previamente definidas. Sobre este conceito assinale a alternativa incorreta: As classes definidas através de herança são chamadas de classes derivadas ou subclasses. A classe da qual a nova é derivada é chamada de classe-pai ou superclasse. A definição de classes a partir de uma única classe-pai é chamada de herança simples. Herança múltipla é a definição de classes derivadas a partir de múltiplas classes-pai. O controle de acesso privado (private) permite que qualquer classe derivada tenha acesso às entidades (atributos e métodos) da classe-pai. - (CORRETA) 14 5 - Exercícios Resolvidos (ENADE, 2005) A orientação a objetos é uma forma abstrata de pensar em um problema utilizando-se conceitos do mundo real e não, apenas, conceitos computacionais. Nessa perspectiva, a adoção do paradigma orientado a objetos implica necessariamente que: Os usuários utilizem aplicações de forma mais simples. Os sistemas sejam encapsulados por outros sistemas. Os programadores de aplicações sejam mais especializados. Os objetos sejam implementados de maneira eficiente e simples A computação seja acionado por troca de mensagens entre objetos. - (CORRETA) 15 6 - Exercícios Resolvidos Sobre paradigmas de programação, considere as seguintes afirmações: No paradigma de programação estruturada os programas são organizados em estruturas modulares denominadas subprogramas, as quais podem ser implementadas por meio de procedimentos ou funções. No paradigma de programação orientado a eventos todas as ações do programa são especificadas por meio de eventos, os quais podem ser programados criando assim comportamentos específicos para o programa. No paradigma de programação orientado a objetos a codificação do programa é organizada em classes, a qual representa um conjunto de códigos contendo as informações e o comportamento do programa. 16 6 - Exercícios Resolvidos Assinale a alternativa correta: Apenas o item I está correto Apenas o item II está correto Apenas os itens II e III estão corretos Apenas os itens I e III estão corretos Todos os itens estão corretos - (CORRETA) 17 7 - Exercícios Resolvidos A programação orientada a objeto permite a definição da visibilidade das informações contidas na classe, para isso são utilizadas as cláusulas: public, static, void e main private, static, void e main private, class e new public, protected e private - (CORRETA) protected, new e class 18
Compartilhar