Historias androides 12 – La O de SOLID de las discotecas
En la historia androide anterior te conté la S de SOLID explicándolo con un ejemplo extraído de mi época como DJ.
Este contenido está restringido.
HAZTE PREMIUM
para difrutar de los audios y vídeos exclusivos.
Me dispongo a hacer lo mismo con la O.
Vamos allá… 😎
A ver, la O de SOLID, hace referencia al principio de Open / Closed.
Abierto / Cerrado.
Una clase tiene que estar abierta a extenderse, pero cerrada a modificarse.
Vamos, que puedas añadir nuevas funcionalidades, sin que ello afecte al código que tengas hecho con anterioridad.
Ahora imagina una discoteca en la que solo se puede poner la música que hay en la cabina.
Me da lo mismo que sea un disco duro, pendrive, CDs o incluso discos de vinilo.
La clave está en que únicamente se escuchará el repertorio que haya en la sala.
No se puede poner música traída de fuera.
Pues esto, no cumpliría la O de SOLID.
Imagínate otra discoteca, en la que hay una cabina, pero no hay música.
Sino que cada DJ que va a pinchar, lleva la suya propia.
Ya se va desvelando, ¿verdad? 😄
Esta sí que cumpliría el principio Open / Closed
Y es que la del primer caso sería digamos una clase Club con un método playMusic()
y el segundo, sería una interfaz Club, con un método abstracto playMusic().
¿Y a ti?
¿Se te ocurre otro ejemplo?
¿Me lo cuentas mandándome un mensaje?