GoConqr has a new look! Let us know what you think.

Mind map

Programação Orientada a Objetos

Pedro Melo English

Map content

Programação Orientada a Objetos

  1. É um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos. Visa um pensamento o mais próximo possível da vida real.

    • Paradigma: modelo a ser seguido para abstrair um problema, estilo de programação
  2. Um conjunto de classes (estruturas definidas) que gera objetos(instâncias) e, estes recebem ordens para executar tarefas através de troca de menagens

    • Vantagens: manutenção, flexibilidade e reutilização
  3. Considera que os dados a serem processados e os mecanismos de processamento dos dados (operações) devem ser colocados em conjunto

  4. Nem sempre é necessária. Quando o modelo de uma tarefa a ser executado é tão simples que a criação de uma classe para representá-lo torna o problema mais comlicado e confuso

  5. Vantagens

    • Ajuda na organização e resolve problemas da programação procedural
    • Minimiza o código
    • Facilita o entendimento desde que a tarefa não seja desmasiadamente simples
    • Concentra responsabilidades em pontos certos
    • Diminui a responsabilidade dos programadores
  6. Termos semelhanetes a problemas muito utilizados: domínio, contexto, cenário e situação

  7. Uma linguagem orientada a objetos deve oferecer: abstração, encapsulamento, herança e polimorfismo

  8. Abstração

    • Habilidade de se concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais
    • Imaginar quais são os objetos e o que eles vão realizar no sistema
    • Na POO, uma classe é uma abstração de entidades existentes no domínio do sistema de software
    • Os objetos são instâncias das classes e cada um tem sua identidade, propriedades e comportamentos
  9. Encapsulamento

    • Adicionam segurança á apliação impedindo o acesso direto ao estado de um objeto
    • Consiste na separação dos aspectos internos e externos de um objeto
    • Permite ignorar os detalhes de implementação (funcionamento interno) permitindo ao desenvolvedor idealizar seu trabalho em um nível mais alto de abstração
    • Ocultação de informações
  10. Polimorfismo

    • Permite a um mesmo objeto se manifestar de diferentes formas
    • Implementações diferentes para uma mesma operação
  11. Herança

    • É o mecanismo de reaproveitamento e reutilização de código
    • Permite que elementos mais específicos incorporem a estrutura e o comportamento de elementos mais genéricos
    • Podem ser diretas e indiretas e as estruturas são formadas para que algumas superclasses agrupem características e comportamentos mais genéricos que possam ser reaproveitados por subclasses mais específicas

Information

Description
Mind Map on Programação Orientada a Objetos, created by Pedro Melo on 10/08/2021.
Created by
Pedro Melo
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?