Despu茅s de aprender herencia, es momento de trabajar otro aspecto clave de la POO: c贸mo se relacionan las clases entre s铆. Esto se logra con t茅cnicas como composici贸n y agregaci贸n.
馃幆 ¿Qu茅 aprender谩s hoy?
✅ Qu茅 es la composici贸n y c贸mo implementarla
✅ Qu茅 es la agregaci贸n y en qu茅 se diferencia
✅ C贸mo crear relaciones entre clases (uno-a-uno, uno-a-muchos)
✅ Ejemplos pr谩cticos con objetos reales
馃敡 1. Composici贸n
La composici贸n representa una relaci贸n fuerte:
“Un objeto contiene otro como parte esencial.”
Si el objeto principal se destruye, los objetos internos tambi茅n.
馃 Aprendiste:
-
El objeto
Cochecrea y contiene aMotor -
No puedes usar
Motorsi no existe unCoche
馃敡 2. Agregaci贸n
La agregaci贸n representa una relaci贸n d茅bil:
“Un objeto usa a otro, pero no lo controla.”
Se pasa como par谩metro, y puede vivir por separado.
馃 Aprendiste:
-
El
Cursoutiliza unProfesorya existente -
Si destruyes el
Curso, elProfesorsigue existiendo
馃 Comparaci贸n r谩pida
| Relaci贸n | Crea internamente | Independencia |
|---|---|---|
| Composici贸n | ✅ S铆 | ❌ No |
| Agregaci贸n | ❌ No | ✅ S铆 |
馃殌 ¿Qu茅 aprendiste hoy?
✔️ A crear relaciones reales entre objetos
✔️ A modelar sistemas complejos como colecciones, veh铆culos, usuarios, etc.
✔️ A aplicar buenas pr谩cticas de dise帽o OOP en Python
馃搨 C贸digo completo disponible en:
github.com/josecodetech
馃挰 ¿Te gustar铆a un proyecto real usando estas relaciones? ¿Un sistema escolar, app o juego?