Dejadme que me presente, mi nombre es Aitor Román y soy Desarrollador Senior desde hace unos cuantos años. No sabría deciros exactamente el momento en el que pasé de ser un Desarrollador Junior a Desarrollador Senior, pero sí que os puedo contar algunos puntos clave, que a día de hoy me doy cuenta, separan ambos títulos. Y justo de uno de esos puntos clave os vengo a hablar hoy, la calidad del código fuente.
Entre cliente y desarrollador, a menudo se habla de «la calidad» del software que se desarrollará, un factor tan importante que determinará total o parcialmente dos puntos esenciales: el precio del software final y el tiempo de desarrollo. Sin contar claro está, que, como un artesano de la cerámica, no todos los desarrolladores consiguen el mismo nivel de calidad del producto.
Como desarrollar el mejor código fuente
La calidad del software se divide en un listado de ventajas que aportará no solo al proyecto final, si no que permitirá con menor o mayor facilidad las actualizaciones del mismo, próximos parches, cambiar de desarrollador y su futura y posterior lectura, entre otros. Pero vamos paso a paso, primero, os listaré algunos de los requisitos, que a mi parecer, tiene que cumplir un código fuente para conseguir mayor calidad.
El código fuente tiene que estar totalmente comentado y documentado.
Un primer punto de este listado y que para mí es esencial, el código fuente tiene que estar totalmente comentado y documentado. No es la primera vez que un cliente me ha facilitado un código fuente de un tercer desarrollador y tengo que darle dos opciones: paso de realizar el proyecto o el coste en tiempo es una «salvajada», por el simple hecho de tener que «adivinar» que hace cada método del programa.
Un código fuente bien comentado, donde cada variable, método y bucle tiene su comentario de ayuda, donde se ha documentado cada script y donde puedes encontrar comentarios adicionales de ayuda entre código, será más fácil de leer y por ende más sencillo de entender y de progresar en su desarrollo.
Desarrollar el código fuente pensando en el futuro.
El código fuente tiene que estar desarrollado pensando en el futuro, y no en las necesidades actuales. El desarrollo mecánico y sistemático que algunos Desarrolladores Junior realizan, es «pan para hoy y hambre para mañana». Dentro de los ejemplos básicos, y siempre que sea posible crear un desarrollo de esta forma, podemos encontrar que un desarrollador utilice un FOREACH combinado con algún tipo de ENUM y un VECTOR en vez de utilizar un SWITCH, o incluso en el peor de los casos, de encontrarse una cadena de varios IF.
Con este último ejemplo y, como digo, siempre que sea posible su sustitución, estaremos abarcando la posibilidad de que el cliente, en un futuro no muy lejano, incluya nuevos conceptos y la diferencia que llevaría de, en el caso del FOREACH, simplemente aumentar el vector y en las otras situaciones, añadir líneas de código adicional.
Y sí, en principio, un FOREACH podría tener menos personalización por «vuelta» que un SWITCH o un IF, pero… ¿Y sí el vector es un vector de objetos (clases)? Utilizando el mismo código desde el FOREACH podemos estar llamando a un método sobrecargado de la clase y conseguir un efecto personalizado, más limpio y con mayor personalización aún.
Utilizar un lengugaje de programación con mejores opciones.
Si el lenguaje de programación lo permite, hay que sacarles partido a las clases. No es la primera vez que me encuentro con programas completos que no usan ni una sola clase, sobre todo en PHP o lenguajes de mayor facilidad de acceso.
Aún así, y aunque en lenguajes como C# estás «obligado» al uso de clases, me encuentro «clases globales» que generalizan demasiado contenido y acaban convirtiéndose en «clases inútiles».
La calidad del código fuente dependerá principalmente de factores como el uso de comentarios y una buena documentación en el código.
Ventajas que obtendremos de un código fuente mejor desarrollado.
Por otro lado, como ya he comentado, gracias a un código fuente de calidad y cumpliendo algunos de los requisitos que he mencionado, obtendremos algunas ventajas como las siguientes.
- Una fácil reproducción del código en su lectura, así en futuros desarrollos será más fácil y rápido entender el código ya desarrollado.
- Finalmente, el código fuente será más «resistente a parches».
- El propio software desarrollado lo notará en velocidad y rendimiento.
- El resultado del código fuente se verá «más bonito y limpio» de cara al cliente.
Gracias a un código fuente de calidad obtendremos un software final más rápido y con mejor rendimiento.
Y ahora que ya conocéis mis pequeños consejos para mejorar el código fuente, es momento de llevar a cabo estas mejoras y aplicarlas en vuestro propio código fuente. No dudéis en dejar vuestros comentarios y estaré encantado de responderlos. Nos vemos en el próximo artículo.
Interesante, pero me hubiera gustado encontrar más ventajas. El artículo desarrolla bastante bien los consejos, pero como digo, las ventajas no han sido muy desarrolladas, que realmente sí que hay muchas.