¿Probamos con un desafío de UML?
Es un diseño simplificado para gestionar una biblioteca, pero contiene un error de concepto. ¿Lo detectaste? 🔎
¿Qué sugerirías para solucionarlo?


Desafío UML 👇
Desafío UML número 2
 

Click aquí para desplegar la solución. 👈
✅ La clase Libro no debería heredar de Biblioteca, ya que la herencia define una relación de generalidad y un Libro no es una Biblioteca. Esto es así porque la herencia permite que las clases puedan descomponerse en otras más específicas, “heredando” las características comunes pero luego manteniendo para sí mismas las que no comparten. Si Libro hereda de Biblioteca, entonces cada Libro tendría también una colección de Socio, lo cual no tiene sentido.
Entonces, puede corregirse el error haciendo que Biblioteca contenga una colección de objetos Libro.
Clase Biblioteca {
    Lista socios;
    Lista libros;
}
Clase Socio {
    int numero;
    string nombre;
}
Clase Libro {
    int codigo;
    string titulo;
    string autor;
}</pre>

Solución al desafío </div></details>