DEV Community

Cover image for Seu código é Orientado a Objetos
Bruno S Freschi
Bruno S Freschi

Posted on

Seu código é Orientado a Objetos

🚀 O seu código é Orientado a Objetos ou apenas um "Procedural Disfarçado"?

Vamos tocar na ferida: o que mais existe por aí é o famoso "Código de Estimação". Aquele código empacotado em classes, cheio de getters e setters para todo lado, mas sem um pingo de inteligência ou comportamento real.

Se o código procedural resolve o problema e entrega o software, por que se dar ao trabalho de modelar objetos? A resposta não está na execução, mas na sustentabilidade.

Por que a OO (bem feita) salva o seu projeto?

  1. Controle da Complexidade (O fim do Espaguete): No procedural, os dados são passivos e as funções globais. Conforme o sistema cresce, mexer em um ponto quebra cinco outros lugares imprevisíveis. A OO propõe o Encapsulamento: cada objeto é uma "caixa preta" que cuida da própria vida.

  2. Flexibilidade sem Cirurgia (Polimorfismo): Precisa adicionar um novo meio de pagamento (ex: Cripto)? Em vez de espalhar if/else por todo o sistema, você apenas cria um novo objeto que sabe "Processar". Você adiciona funções sem tocar no que já está funcionando.


🏛️ Os 4 Pilares na Prática

Pilar O que resolve na vida real?
Abstração Esconde a complexidade. Você dirige o carro sem precisar entender a explosão interna do motor.
Encapsulamento Protege os dados. Ninguém altera o "Saldo" sem passar pelas regras de negócio.
Herança Compartilha características comuns, evitando redundância (mas cuidado para não virar um pesadelo!).
Polimorfismo Permite que diferentes objetos respondam à mesma mensagem de formas específicas.

💡 O Veredito

Usamos Orientação a Objetos para que o código seja legível para humanos, e não apenas compreensível para máquinas. O custo de manutenção de um software é, em média, 80% do seu ciclo de vida.

A OO bem aplicada é um investimento para que o desenvolvedor do futuro (que pode ser você daqui a seis meses) não queira deletar tudo e começar do zero.


E aí, o seu código atual passaria em um teste de pureza de OO? 🧐

#programação #softwareDevelopment #cleanCode #OOP #devLife #brazilianDevs

Top comments (2)

Collapse
 
cssio_jhones_005550a263d profile image
Cássio Jhones

Em muitos projetos a orientação a objetos vira apenas uma estrutura de pastas e classes, mas a lógica continua totalmente procedural. No mundo .NET, é fácil cair na armadilha de criar classes só por criar, sem pensar no comportamento real dos objetos. O encapsulamento e o polimorfismo são, sem dúvida, os pilares que mais salvam o nosso dia a dia na hora de escalar

Collapse
 
gabranato profile image
Gabriel Pimenta

É importante lembrar que usar a abordagem certa e manter o código simples ajuda muito na manutenção futura, além de facilitar o entendimento rápido do código kkkkk.