Se você está entrando agora no mundo de OO (orientação a objetos), seguem alguns conceitos básicos que você deve saber:

  • Abstração
    Capacidade de nos importar somente com aspectos relevantes em um determinado contexto.
  • Classe
    São como especificações de um objeto que tem atributos métodos. Geralmente representam algo abstrato, como um substantivo. Por exemplo: casa, pessoa, veículo.
    Uma analogia que podemos fazer é que uma classe corresponde à planta baixa de uma casa.

Exemplo de classe Pessoa, com atributos e métodos

  • Objeto
    São instâncias da classe, ou seja, uma criação concreta a partir da classe.
    Se a classe representa a planta baixa de uma casa, o objeto representa a casa construída.
  • Herança
    Conceito que permite que uma classe herde atributos e métodos de uma classe mãe.

    Criamos duas extensões da classe Pessoa. Pessoa Física e Pessoa Jurídica herdam todos os atributos e métodos de Pessoa e incluem os seus próprios. Pode-se afirmar que toda Pessoa Física é uma Pessoa, mas nem toda Pessoa é uma Pessoa Física

    Podemos dizer que Pessoa é uma superclasse ou classe mãePessoa Física e Pessoa Jurídica são subclasses ou classes filhas.
    Utilizando a herança, podemos evitar repetição de código, centralizando atributos e métodos em classes que fazem sentido estarem relacionadas.

    • Interface
      Contrato entre uma classe e o mundo exterior. Uma interface define métodos que devem ser desenvolvidos (contrato a ser seguido) para quem quiser implementá-la.
    • Encapsulamento
      A ideia do encapsulamento é proteger partes do código, escondendo como funcionam. Desta forma, as mudanças e manutenções futuras ficam facilitadas, pois uma determinada regra não ficará espalhada em vários lugares, mas sim encapsulada em determinado lugar.
    • Sobrescrita
      No exemplo da herança, tanto Pessoa Física quanto Pessoa Jurídica herdam o método pagarImposto(), mas cada tipo de pessoa paga imposto de forma diferente. Dessa forma, as subclasses podem reescrever o método para atender suas necessidades específicas.
    • Polimorfismo
      Capacidade de referenciar um objeto de várias formas. Usando o mesmo exemplo da herança, uma Pessoa pode ser referenciada como uma Pessoa Física ou Pessoa Jurídica. O inverso não é verdadeiro, pois toda Pessoa Jurídica é uma Pessoa, mas nem toda Pessoa é uma Pessoa Jurídica.

Este artigo foi originalmente publicado em: https://medium.com/gdgcampinas/conceitos-b%C3%A1sicos-de-orienta%C3%A7%C3%A3o-a-objetos-b58809b2d809