Si estáis como nosotros en el mundo del software libre y el desarrollo, sabréis más que de sobra que quizás lo más complejo de hacer un desarrollo, no es hacerlo, es hacerlo de forma que otro pueda entenderlo (hoy, mañana y dentro de mucho) y que pueda ser probado para asegurar que no fallará en un caso extraño en un futuro. Y es que todavía recuerdo cuando desarrollaba de forma informal, cuando aprendía e incluso ya trabajando y hacía un código que podríamos denominar espagueti.
¿Por qué? Seguro que os ha pasado también a vosotros. Por ejemplo:
Así que bueno, pasar por esa fase es bueno. No tiene sentido hacer cosas bien, si no sabes por qué está bien y por qué otras están mal. Esto que os comento arriba al final provoca:
Y os preguntaréis, ¿por qué? Porque un código correcto y bien planteado, es garantía de estabilidad, de poder mejorarse sin tener que invertir mucho y de no depender en exceso de unas cuantas personas en la organización que son las que saben cómo va todo.
A este problema, se le junta otro más: JavaScript. Sí, este lenguaje que a día de hoy está más que de moda, nació hace mucho como un lenguaje para validar formularios en los primitivos navegadores. ¿Esto qué provoca? Que su sintaxis, por retrocompatibilidad y por su forma de ser, es muy muy flexible. Y se pueden hacer multitud de cosas sin muchas restricciones, pero esa libertad crea problemas.
¿Qué te recomiendo que hagas? Lo primero que leas documentación, como por ejemplo Software Crafters. Debes formarte no sólo en desarrollar, sino también en desarrollar siguiendo unas pautas. Estas pautas deben llevarte a hacer código limpio y de calidad. Quizás hayáis oído el anglicismo clean code y justamente la idea es esa, limpieza en tu código. Un código hecho de tal forma que alguien en un futuro pueda leerlo sin tener que pararse mucho a hacerlo. Ese alguien puedes ser tú mismo.
La segunda recomendación es que guíes tu desarrollo siguiendo las directrices del diseño dirigido por tests (TDD). Al final, el software es algo que va a usarse y que es susceptible de sufrir errores. En un software podemos encontrar errores, pero no podemos decir que no existen. Si sigues TDD conseguirás minimizar la existencia de los mismos.
Los test unitarios y el diseño dirigido a tests te permitirán obtener muchos pequeños trozos de software completamente funcionales y libres de errores. Al ir desarrollando tu solución basándote en pequeñas unidades funcionales correctas, tendrás muy fácil:
Así que bueno, mucho ha cambiado el mundo de la ingeniería del software en estos tiempos, pero ahora, si sigues ciertos métodos, desarrollar software es más cómodo, relajado y productivo.
https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.