Thursday Feb 03, 2022

Principios de diseño de software DRY y KISS

En este artículo, voy a explorar los principios de diseño de software y sus beneficios, por qué los principios de diseño son útiles para nosotros, y cómo implementarlos en nuestra programación diaria. Vamos a explorar los principios de diseño de software DRY y KISS.

El principio DRY: No te repitas

DRY son las siglas de «Don’t Repeat Yourself» (no te repitas), un principio básico del desarrollo de software cuyo objetivo es reducir la repetición de información. El principio DRY se enuncia así: «Cada pieza de conocimiento o lógica debe tener una representación única e inequívoca dentro de un sistema».

Violaciones de DRY

«Disfrutamos tecleando» (o, «Haciendo perder el tiempo a todo el mundo»): «Disfrutamos tecleando», significa escribir el mismo código o lógica una y otra vez. Será difícil manejar el código y si la lógica cambia, entonces tenemos que hacer cambios en todos los lugares donde hemos escrito el código, perdiendo así el tiempo de todos.

Cómo lograr DRY

Para evitar violar el principio DRY, divide tu sistema en piezas. Divida su código y su lógica en unidades reutilizables más pequeñas y utilice ese código llamándolo donde quiera. No escriba métodos largos, sino que divida la lógica e intente utilizar el trozo existente en su método.

Beneficios de DRY

Menos código es bueno: ahorra tiempo y esfuerzo, es fácil de mantener y también reduce las posibilidades de errores.

Un buen ejemplo del principio DRY es la clase helper en las bibliotecas empresariales, en la que cada pieza de código es única en las bibliotecas y clases helper.

KISS: Keep It Simple, Stupid

El principio KISS es descriptivo para mantener el código simple y claro, haciéndolo fácil de entender. Después de todo, los lenguajes de programación son para que los humanos los entiendan – las computadoras sólo pueden entender 0 y 1 – así que mantén la codificación simple y directa. Mantén tus métodos pequeños. Cada método no debería tener más de 40-50 líneas.

Cada método debería resolver sólo un pequeño problema, no muchos casos de uso. Si tienes muchas condiciones en el método, divídelas en métodos más pequeños. No sólo será más fácil de leer y mantener, sino que puede ayudar a encontrar errores mucho más rápido.

Violaciones de KISS

Es probable que todos hayamos experimentado la situación en la que conseguimos trabajo para hacer en un proyecto y encontramos algo de código desordenado escrito. Eso nos lleva a preguntarnos por qué se han escrito esas líneas innecesarias. Basta con echar un vistazo a los dos fragmentos de código que se muestran a continuación. Ambos métodos están haciendo lo mismo. Ahora tienes que decidir cuál usar:

public String weekday1(int day) { switch (day) { case 1: return "Monday"; case 2: return "Tuesday"; case 3: return "Wednesday"; case 4: return "Thursday"; case 5: return "Friday"; case 6: return "Saturday"; case 7: return "Sunday"; default: throw new InvalidOperationException("day must be in range 1 to 7"); }}public String weekday2(int day) { if ((day < 1) || (day > 7)) throw new InvalidOperationException("day must be in range 1 to 7"); string days = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; return days;}

Cómo lograr KISS

Para evitar violar el principio KISS, trata de escribir código simple. Piense en muchas soluciones para su problema, luego elija la mejor, la más simple y transfórmela en su código. Siempre que encuentres un código largo, divídelo en varios métodos, haz clic con el botón derecho y refactoriza en el editor. Intenta escribir pequeños bloques de código que hagan una sola tarea.

Beneficio de KISS

Si tenemos alguna funcionalidad escrita por un desarrollador y fue escrita con código desordenado, y si pedimos que otro desarrollador haga modificaciones en ese código, entonces primero, tienen que entender el código. Obviamente, si el código está escrito de manera simple, entonces no habrá ninguna dificultad en la comprensión de ese código, y también será fácil de modificar.

Resumen

Mientras escribes cualquier código o módulo, mantén los principios de diseño de software en mente y úsalos sabiamente, hazlos tu hábito para que no necesites seguir recordando cada vez. Ahorrará tiempo de desarrollo y hará que su módulo de software sea robusto, lo que podría ser fácil de mantener y extender.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Back to Top