DEV Community

Alex Reis
Alex Reis

Posted on

1 1 1 1 1

Entendendo os pilares da Programação Orientada a Objetos

A Programação Orientada a Objetos possui quatro pilares, os quais são princípios de design de software usados para escrever um código mais limpo e orientado a objetos. São eles:

  • Abstração
  • Encapsulamento
  • Herança
  • Polimorfismo Vamos conhecer cada um deles.

Abstração

Abstrair algo significa esconder os detalhes da implementação dentro de algo - às vezes um protótipo, às vezes em uma função. Num código abstraído você não precisa se preocupar com o passo a passo da implementação.

Um exemplo claro do conceito de abstração seria o funcionamento de um carro. Quando acionamos ele para ligar, não precisamos saber quais passos ele faz para colocar o motor em funcionamento.

Criar a abstração de um objeto do mundo real seria tomar suas caracteristicas mais relevantes e não se preocupar tanto com seus detalhes.

Abstração, portanto, é encontrar coisas semelhantes em seu código e fornecer uma função ou objeto geneŕico e servir em vários lugares/com vários propósitos.

Encapsulamento

Encapsulamento significa que o código de cada objeto deve controlar apenas seu próprio estado.
Todas as chaves e métodos (funções) de um objeto são suas propriedades. Se você redefinir ou excluir uma chave, por exemplo, estará alterando o seu estado.

Por isso, é importante limitar o acesso de quais partes do código podem ser acessadas.

O objetivo é esconder os dados em um lugar onde não precise de acesso e expor os dados de modo claro onde for necessário.

O encapsulamento metaforicamente seria uma casca de noz. Vinculando seus dados a algo, seja uma classe, objeto, módulo ou função, e fazendo o possível para mantê-lo o mais privado possível.

Herança

Herança é um conceito que permite uma classe poder herdar métodos e atributos de outra classe. O principal benefício é a reutilização de código.

Sempre que usamos herança tentamos fazer com o pai e o filho tenham alta coesão. Coesão é o quanto seu código está relacionado.

Mantenha sua herança simples e previsível de entender. Ao usar herança, ela precisa ter a maior parte das funcionalidades (você nem sempre precisa ter absolutamente tudo).

Polimorfismo

Polimorfismo é a condição de "ocorrer de várias formas diferentes".

Se você usou herança corretamente, agora tanto pais quanto filhos podem ser usados de maneira confiável. Cada filho que estende o pai pode substituir o comportamento do pai por um comportamento mais específico.

O verdadeiro poder do polimorfismo é poder compartilhar comportamentos e permitir substituições personalizadas.

Conclusão

Espero que assim tenha ficado entendido quais são os pilares da orientação a objetos e que seu uso correto torna o código mais elegante e robusto.

Referência

Os quatro pilares da Programação Orientada a Objetos - com JavaScript

AWS GenAI LIVE image

Real challenges. Real solutions. Real talk.

From technical discussions to philosophical debates, AWS and AWS Partners examine the impact and evolution of gen AI.

Learn more

Top comments (0)

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay