Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Estos principios no son leyes o reglas inalterables que se tengan que cumplir,
pero si son una serie de recomendaciones prácticas que de ser aplicadas en su
conjunto ayudan a nuestro software a obtener los siguientes beneficios:
Facilidad en el mantenimiento.
Facilidad para hacer testing.
Rapidez para de extender funcionalidades.
Buena refactorización.
Tolerancia frente a errores.
Antes de desglosar las letras de SOLID y ver que nos dice cada principio,
tenemos que repasar dos conceptos importantes en el desarrollo de cualquier
software, que son el acoplamiento y la cohesión.
Single Responsibility: una clase, modulo, método, etc, debe tener una y solo
una razón para cambiar. Esto significa que una entidad de software debe tener
solo una responsabilidad y hacer únicamente la tarea para la cual ha sido
diseñada. De lo contrario si asume más de una responsabilidad existirá un alto
acoplamiento provocando que nuestra lógica de programación sea frágil ante
cualquier cambio.
Liskov substitution: este principio fue elaborado por Barbara Liskov y viene a
decir que los objetos deben ser reemplazables por instancias de sus subtipos sin
alterar el correcto funcionamiento del sistema. Por ejemplo, si tenemos una clase
“Coche” que tiene un método “arrancarMotor” y también tenemos una clase
“Deportivo” que extiende de “Coche”, podemos sustituir las referencias de
“Coche” por referencias de “Deportivo”. Aplicando este principio conseguimos
validar que nuestras abstracciones sean correctas.