Programação Orientada a Objetos (POO)

Paradigma usando objetos com dados e métodos (4 pilares).

A Programação Orientada a Objetos (POO) é um paradigma que estrutura o código em torno de 'objetos'—unidades autônomas contendo dados (atributos) e código (métodos).

Quatro pilares da POO:
1. Encapsulamento: Agrupar dados e métodos, esconder estado interno
2. Abstração: Expor apenas características essenciais
3. Herança: Classes herdam propriedades/métodos de classes pai
4. Polimorfismo: Mesma interface, diferentes implementações

        graph LR
  Center["Programação Orientada a Objetos (POO)"]:::main
  Rel_functional_programming["functional-programming"]:::related -.-> Center
  click Rel_functional_programming "/terms/functional-programming"
  Rel_java["java"]:::related -.-> Center
  click Rel_java "/terms/java"
  Rel_stored_program_concept["stored-program-concept"]:::related -.-> Center
  click Rel_stored_program_concept "/terms/stored-program-concept"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 Teste de conhecimento

1 / 1

🧒 Explique como se eu tivesse 5 anos

Pense nas instruções de LEGO. Uma classe é como as instruções para construir uma casa. Cada casa que você constrói seguindo essas instruções é um objeto. Casas diferentes podem compartilhar peças (herança) mas parecer diferentes (polimorfismo)!

🤓 Expert Deep Dive

Os princípios SOLID guiam um bom design POO. Composição sobre herança evita o problema da classe base frágil. Duck typing (Python) permite polimorfismo sem herança.

📚 Fontes