SOLID – Principio de Segregacion de Interfaz

SOLID – Principio de Segregacion de Interfaz

Posiblemente este sea el principio más fácil de definir de todos los SOLID.

En pocas palabras aconseja crear interfaces específcas para cada actor y no grandes interfaces con métodos comunes a varios actores.

¿Por qué es útil el principio de segregacion de interfaces?

Imagina que tienes un módulo A que permite muchas operaciones en una única inerfaz y creamos una serie de módulos que use algunos de los métodos provistos por A. ¿Que pasa si queremos añadir nuevas funcionalidades en A y añadirlas a su superinterfaz? Las clases que dependen de A y usen esa interfaz para comunicarse tendrán que proveer algún tipo de código para esos métodos, aunque no los vayan a utilizar nunca. Segregando esa gran interfaz en funcion del actor que vaya a utilizarla, evita que otros actores tengan que implementar métodos que nunca van a usar.

Como quizás habrás podido observar, al hablar de actores y el nivel de conocimiento de estos, puede que te haya recordado vagamente al de responsabilidad única… y es que los principios de SOLID no son estancos entre sí.

Los principios SOLID

Los principios SOLID

SOLID es un acrónimo para una serie de principios definidos por Robert C. Martin, un famoso autor y arquitecto de software autor de varios libros que es posible que os suenen, como Clean Code, Clean Architecture o The Clean Coder, todos altamente recomendados para cualquier programador o trabajador del software.

En ellos se presentan una serie de principios que definimos como SOLID y que buscar la escalabilidad, claridad y escalamiento de todo el software que desarrollemos.

Estos cinco principios son los siguientes, respetando su nomenclatura inglesa:

En cada uno de los enlaces expuestos podreis encontrar más con más detalle en qué consiten cada uno de estos principios, en mi opinion absolutamente necesarios de comprender para la realizacion de un código que se pueda definir como profesional.