Programación Orientada a Objetos (POO)
Paradigma usando objetos con datos y métodos (4 pilares).
La Programación Orientada a Objetos (POO) es un paradigma que estructura el código alrededor de 'objetos'—unidades autónomas que contienen datos (atributos) y código (métodos).
Cuatro pilares de POO:
1. Encapsulación: Agrupar datos y métodos, ocultar estado interno
2. Abstracción: Exponer solo características esenciales
3. Herencia: Las clases heredan propiedades/métodos de clases padre
4. Polimorfismo: Misma interfaz, diferentes implementaciones
graph LR
Center["Programación 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;
🧠 Prueba de conocimiento
🧒 Explícalo como si tuviera 5 años
Piensa en las instrucciones de LEGO. Una clase es como las instrucciones para construir una casa. ¡Cada casa que construyes siguiendo esas instrucciones es un objeto. Las diferentes casas pueden compartir partes (herencia) pero verse diferentes (polimorfismo)!
🤓 Expert Deep Dive
Los principios SOLID guían un buen diseño POO. La composición sobre la herencia evita el problema de la clase base frágil. Duck typing (Python) permite polimorfismo sin herencia.