¿Sabes que mantener el software es tan importante como crearlo? Ahí entra la importancia del código limpio en el desarrollo de software.

Pero, para mantenerlo, se deben implementar algunas prácticas en el equipo de desarrollo.

¿Alguna vez has oído hablar de la regla de los Boy Scouts? Deberías dejar el campamento más limpio de lo que lo encontraste.

Esta regla también debe ser seguida por el desarrollador que comienza a realizar el mantenimiento del software.

Como resultado, Clean Code es más que una metodología.

Código limpio es más importante tener un buen codigo limpio
Código limpio – unsplash

Es una filosofía que se utiliza ampliamente en los equipos de tecnología de organizaciones y empresas para mantener el software lo más limpio y libre de errores.

Como resultado, he escrito este artículo para explicar las ideas principales, las mejores prácticas, a mi humilde parecer, y los beneficios de trabajar con cuidado en tener un código limpio.

¿Quién creo las técnicas de código limpio?

Gracias al libro del tío Bob, Robert Cecil Martin, que lo escribió en 2008 y es llamado The book Clean Code: a Handbook of Agile Software Craftsmanship introduced Clean Code and associated techniques.

El tío Bob ha estado construyendo software desde los 0 así que algo sabe.

Además es uno de los 17 integrantes del manifiesto ágil, escrito en 2001 y que a día de hoy sigue siendo una declaración fundamental de ideas y principios para crear buen software.

Si no lo has leído, te recomiendo que lo hagas porque te ayudará mucho a crecer como desarrollador.

Además, esos principios siguen siendo usados a día de hoy por grandes empresas.

9 Principios del Código Limpio

El tío Bob proporciona al menos 9 buenos principios para aplicar Clean Code de su libro a nuestro código.

Estos de los que te hablo aquí son los más importantes para mí, y son los siguientes:

1. Nombres significativos

Los nombres están por todas partes en el software. Nombramos variables, funciones, argumentos, clases, archivos y directorios. Debido a que hacemos mucho de eso, será mejor que lo hagamos bien.

Por lo tanto, usa nombres en el código que revelen la intención y que eviten la desinformación, que sean fácil de pronunciar, fácil de entender y que tengan un significado dentro del código.

2. Ten cuidado con los comentarios

Nada es más útil que un comentario bien colocado. También nada es peor que un comentario torpe, redundante y destructivo que además no es totalmente cierto y produce errores y desinformación.

Por lo tanto, los comentarios no siempre son buenos y, en ocasiones, pueden ser incluso dañinos. Por lo tanto, usa comentarios solo cuando sea estrictamente necesario y recuerda actualizarlos cada vez que hagas cambios en el código.

3. Dont repeat yourself

Una de las reglas más importantes en Clean Code. Este concepto muestra que no debe haber dos partes del software que realicen la misma función.

Cada vez que se ve una duplicación en el código o código repetido, representa una oportunidad perdida para la abstracción de ese mismo código. Es decir, extraer ese código a una función o clase separada.

Kent Beck también lo convirtió en uno de los principios de la Programación Extrema y lo llamó: “Hazlo una vez, y solo una vez”.

4. Sigue los patrones del código

Los patrones hacen que el código sea mucho más fácil de entender.

Hay que normalizar los estándar de código, la manera de llamar a las variables, ya sea una u otra manera las elegidas pero dentro del código debe de haber un patrón y cada uno de los programadores debe de seguirlo.

Las distintas variaciones de una variable deben normalizarse, por ejemplo (nombrePersona, NombrePersona, nombrepersona o nombre_persona)

Si continúa con un proyecto legacy o que ya había sido creado por otros desarrolladores, presta atención a los patrones que se han creado y sigue usando los mismos en tus actualizaciones.

Esta práctica mejora el rendimiento de otros desarrolladores y evita problemas e incongruencias del sistema.

Más vale seguir un patrón conocido que reinventar la rueda.

5. La regla del boy scout

Ya he mencionado esto, pero deja todo más limpio de lo que lo encontraste cuando tú llegaste. No es suficiente con escribir un buen código. El código debe mantenerse limpio con el tiempo.

El código no se convertirá en un desastre si todos hacemos el mismo un poco más limpio y ordenado que cuando nos lo encontramos.

6. Gestiona los errores

Cuando programamos, debemos gestionar errores. Las cosas pueden salir mal, y cuando lo hacen, somos responsables de garantizar que nuestro código realice lo que se supone que debe hacer y de controlar los errores, guardarlos y ser capaces de analizarlos.

Por lo tanto, el código limpio debe ser legible, pero más aún robusto. Debe hacer lo planeado, pero si aparece un error, debería poder manejarlo y que no cause errores graves en el sistema desarrollado.

7. Mantén los tests pequeños siempre que se pueda

El código solo se considera limpio después de pasar los tests y las diferentes pruebas.

Sin embargo, después de que los programadores hayan realizado un conjunto de pruebas para aprobar el código, éstos deben asegurarse de que esas pruebas sean convenientes para ser ejecutadas por cualquier otra persona que necesite trabajar con el código.

Por ejemplo, el conjunto de pruebas no debería tardar demasiado en ejecutarse, porque si eso sucede, el equipo se desanimará a pasar el código por las pruebas.

8. Las funciones lo más simple posibles

La primera regla de las funciones es que deben ser pequeñas. Las funciones deben hacer una sola cosa y hacerlo bien.

Si tienes una función en el código que hace más de una cosa, esa función se puede dividir en funciones más pequeñas con nombres significativos de la funcionalidad que hacen.

Esto hace que el código sea más fácil de entender y de mantener en el futuro.

9. Piensa que estás escribiendo un libro

Este último principio es esencial para un código limpio.

El código debe ser fácil de leer y comprender, como si de un libro se tratara.

Otros desarrolladores deben ser capaces de leer el código y deben poder conocer qué hace cada función, para qué se usa cada variable y la estructura general del sistema que se está siguiendo.

Resumen

En general, los desarrolladores nos pasamos más tiempo estudiando el código existente y tratando de rehacerlo que escribiendo código nuevo. Y, dado que el tiempo es esencial en los equipos ágiles, es fundamental utilizar las mejores prácticas para tener un código limpio y facilitar el trabajo de todos.

En resumen, un código mal diseñado cumplirá con los requisitos, pero inevitablemente surgirán problemas, particularmente cuando llegue el momento de mantenerlo o actualizarlo.