Por Luis Gabriel Rodríguez Alejos
En nuestro día a día ayudando a nuestros clientes, nos encontramos con código poco sostenible. En LeanMind estamos enfocados en mejorar la forma en la que se hace código de una forma mucho más sostenible.
El acoplamiento es uno de los principios que menos se tienen en cuenta a la hora de programar y cuando somos conscientes de ello, es demasiado tarde.
Decimos que un código es de calidad, cuando es fácil de cambiar. Tener un código fuertemente acoplado, significa que es complicado cambiarlo, porque los elementos que no están relacionados entre sí, están estrechamente ligados. Podemos leer más sobre acoplamiento en el siguiente enlace
Partiendo de la idea anterior, los métodos privados tienen que saber lo mínimo imprescindible para poder trabajar. Generalmente los métodos saben demasiadas cosas de los datos con los que trabajan. Por lo tanto, estamos incrementando el acoplamiento entre dos clases, que no tienen que conocerse tan íntimamente.
Como podemos ver en el siguiente código. Tenemos una clase UserSignUpService
que se encarga de dar de alta a un nuevo usuario. Para ello tenemos la clase UserSingUpArgs
, que contiene los datos de ese nuevo usuario. Pero antes de dar de alta, necesitamos comprobar que ese usuario no se encuentre en el sistema, que es la responsabilidad del método Exist
de la interfaz IUserRepository
.
|
|
Como podemos observar existe un acoplamiento entre el método Exist
y el objeto UserSignUpArgs
, porque ese método no tiene que conocer que la clase UserSignUpArgs
tiene una propiedad que se llama Email
.
Para reducir el acoplamiento entre estos dos elementos, decrementaría el nivel de conocimiento del método Exist
de la siguiente manera:
|
|
De esta forma, los métodos sólo saben de los datos con los que tienen que trabajar.
Conclusión:
Como hemos visto, es una pequeña mejora en el código que parece que no aporta nada, pero repetida en el tiempo, obtenemos un código mucho menos acoplado, más fácil de cambiar y mucho más sostenible.
Espero que te haya sido de utilidad
Happy Coding!!!
¿Quieres más? te invitamos a suscribirte a nuestro boletín para avisarte cada vez que recopilemos contenido de calidad que compartir.
Si disfrutas leyendo nuestro blog, ¿imaginas lo divertido que sería trabajar con nosotros? ¿te gustaría?
Pero espera 🖐 que tenemos un conflicto interno. A nosotros las newsletter nos parecen 💩👎👹 Por eso hemos creado la LEAN LISTA, la primera lista zen, disfrutona y que suena a rock y reggaeton del sector de la programación. Todos hemos recibido newsletters por encima de nuestras posibilidades 😅 por eso este es el compromiso de la Lean Lista