Clean code o código limpio es aquel que se ha escrito con la intención de que otra persona (o tú mismo en el futuro) lo entienda.
Responsabilidad
Como profesionales del software, tenemos que ser responsables de nuestros desarrollos. Ya sea para una nueva funcionalidad en un producto de una gran compañía, para una web que nos han encargado, una ayuda a un amigo o amiga en su proyecto personal, o si es una contribución en un proyecto Open Source… es nuestra responsabilidad hacerlo bien.
Debemos desarrollar de la mejor manera que sepamos. Hay muchas convenciones, patrones y guías de buenas prácticas. Conocerlas y detectar cómo aplicarlas, y cuando no aplicarlas, es lo que nos convertirá en Aresanos/as del Software.
Clean JavaScript
Permitidme que os recomiende el libro Clean JavaScript de Miguel A. Gómez. Se trata de un libro que nos ayuda a mejorar la legibilidad de nuestro códido, escribir un código más intuitivo, que lo podamos testear de forma fácil y, lo más importante, tolerante al cambio.
Mi opinión
Es un libro que está bien estructurado, fácil de leer, con ejemplos claros y concisos según el tema que se esté tratando. Todos los ejemplos están disponibles online para que podamos probarlos.
Consta de tres secciones:
- Clean Code: donde nos explica qué es, cómo mejorar el nombrado de variables, las funciones, las clases y comentarios.
- Principios SOLID: aquí hace un repaso a cada uno de los principios, con ejemplos de código. Me ha gustado que empiece por explicar el porqué debemos alejarnos de los principios STUPID.
- Testing y TDD: en la última sección del libro, nos habla de los test. Lo hace de una forma muy amena, con ejemplos paso a paso, y llegando a hacer una kata con la metodología TDD.
Encontrar un libro donde concocer todos estos principios del desarrollo del software con ejemplos en JavaScript es todo un lujo. A mí me ha ayudado a interiorizar los conceptos.
Una de las cosas que me encanta es que está lleno de referencias, eso ayuda a reforzar el mensaje que está dando Miguel y abre la puerta que podamos investigar más sobre el tema.
Se le nota bastante que tiene preferencia por TypeScript, pero los ejemplos que utiliza son muy intuitivos.
Cierra el libro con la recomendación del libro de un gran amigo y compañero, Diseño Ágil con TDD de Carlos Blé. El cual tengo listo para su lectura 😊.