El Acrónimo: SOLID

El acrónimo SOLID fue adoptado por Robert C. Martin como una manera sencilla de recordar los principios fundamentales en la construcción de software, el acrónimo permite recordar fácilmente el titulo de cada uno de los principios y a largo plazo su memorización, simplemente...el arte de la mnemotécnia.


El titulo de cada uno ya dice mucho de su contenido sin embargo de cada principio se puede hablar mucho, pueden existir muchas interpretaciones, maneras de verlo y en especial técnicas y acciones recomendadsa para hacer cumplir dicho principio. Para mirar de que trata cada uno e incentivar la creatividad e imaginación de quien lee, antes de profundizar en cada uno es adecuado dar una idea breve de su contenido y propósito.

Principio de responsabilidad única

Cada clase debe tener una sola razón para cambiar y una sola responsabilidad, para eso es para lo que esta construida, esto brinda un nivel alto de coherencia al sistema. Si usted manejará un auto esa será su única responsabilidad, no se debe preocupar por la música de la radio, si llega a averiarse el radio del auto su función no se vera afectada ¡que lo arregle otro! usted puede seguir manejando a la perfección...que bueno es tener una única responsabilidad.

Principio abierto/cerrado

El software siempre debe diseñarse abierto para extensión pero cerrado para modificación. Si se tiene un PC muy viejo que no cuenta con antena WiFi simplemente se le conecta una por el puerto USB y se ha extendido su funcionalidad, no debe ser necesario abrir su CPU y modificar cada circuito en la tarjeta de red para lograrlo.

Principio de sustitución de Liskov

Se refiere al los subtipos y tipos en general, a las jerarquías de clase y la capacidad que tiene semánticamente esto para poder reemplazar un hijo por su padre. Se puede decir que el alcade es un animal, eso es correcto y en todo lugar donde se hable de animales se podrá reemplazar "animal" por "alcalde" y todo funcionará..."El alcalde tiene alta capacidad de movimiento" eso es cierto, sin embargo no se puede hacer lo contrario..."Un animal vendió una empresa de la ciudad" politicamente puede ser correcto, pero siendo realistas un gusano por ejemplo no tiene la capacidad de razonar eso.

Principio de segregación de interfaces

Entre más sencillas sean las interfaces más sencillo y mejor sentido tendrá el programa ya que no se obligará a una clase a adquirir responsabilidades que no requiere.

Principio de inversión de dependencias

Los modulos de alto nivel no deben depender de los modulos de bajo nivel, los detalles deben depender de las abstracciones y no al contrario. Depender de lo abstracto le da estabilidad al sistema, es más rentable contratar un veterinario que atienda animales, a uno que atienda gatos, y luego tener que contratar a otro para perros, etc, más abstracto, mejor.

results matching ""

    No results matching ""