SOLID y GRASP
SOLID y GRASP
SOLID y GRASP
SRP: Single Responsibility Experto en información, nos Una clase debería tener solo
Principle, nos dice que una dice que la responsabilidad de un motivo para cambiar y
clase debería concentrarse la creación de un objeto o la debería ser ella misma, la
sólo en hacer una cosa. implementación de un encargada de crear los
método debe recaer sobre la objetos e implementar los
clase que conoce toda la métodos sobre los que es
información necesaria para experta.
crearlo o ejecutarlo.
OCP: Open/Closed Principle, Indirección, nos permite Las clases existentes no
nos dice que las entidades de mejorar el bajo acoplamiento deberían poder ser cambiadas
software deberían estar entre dos clases asignando la ya que el código funciona, aun
abiertas a la extensión pero responsabilidad de la así, deben estar dispuestas a
cerradas a la modificación. mediación entre ellos a una extenderse para acoplarse
clase intermedia. mejor con otras.
DIP: Dependency Inversion Polimorfismo, es permitir que Hay que crear abstracciones,
Principle, nos dice que hay varias clases se comporten de ya que todas las clases se
que depender de manera distinta dependiendo comportan de manera
abstracciones no de del tipo que sean. distinta, aun así, podemos
implementaciones concretas. generalizar sus
Programar para una interfaz comportamientos en una
no para una implementación. abstracción y usarlos en
distintas implementaciones.
ISP: Interface Segregation Variaciones protegidas, se Hay que tener pequeñas las
Principle, nos dice que usan técnicas que interfaces, con esto se logra
debemos mantener las identifiquen los módulos, que en un futuro sean más
interfaces pequeñas y clases o partes del sistema fácil de implementar o
cohesivas, que puedan que pueden ser susceptible a modificar, ya que las
coexistir unas con otras. modificaciones durante el interfaces pequeñas son más
Es mejor muchas interfaces tiempo y sean envueltas en independientes.
específicas para cada cliente una interfaz dejando que ésta,
que una sola interfaz de sea lo más independiente
propósito general. posible a nuestro sistema.