Clean Code

Clean CodeClean Code
Calificación:
Autor: Robert C. Martin
Año: 2008
Editorial: Prentice Hall

No me gusta recurrir a los argumentos de autoridad, pero creo que es conveniente comenzar esta reseña explicando que el autor principal del libro del que os hablo hoy, Clean Code, o Código Limpio, es Robert C. Martin, a.k.a Uncle Bob, experto en desarrollo de software, miembro fundador de la Agile Alliance, primer presidente de la asociación y coautor del Manifiesto Ágil. Hechas las presentaciones, pasemos a hablar del libro.

Clean Code se estructura alrededor de una idea básica: la de que el buen código es resultado, ante todo, de prestar atención a los pequeños detalles. Muchas veces estamos tan centrados en la arquitectura, o en acumular patrones y principios que no sabemos aplicar correctamente, que no damos la importancia que se merece a otros detalles que pueden parecer menores, pero que tienen igual o mayor importancia. No olvidemos que antes de correr, se ha de aprender a andar.

Antes de comenzar a leer y coleccionar libros sobre metodología, gestión de proyectos, pruebas o diseño de software, por favor, empieza leyendo este. Es posible que muchas de las cosas que explica te parezcan obvias a estas alturas, pero creo que es preferible hacerte perder algo de tiempo, a que, por vanidad o desconocimiento, estés descuidando las bases. En todo caso, creo que es imposible no aprender al menos una cosa nueva en cada capítulo, independientemente de tu nivel.

El libro está dividido en tres partes, siendo los 13 primeros capítulos consejos razonados de cómo escribir código limpio, divididos por temáticas. Una lectura muy amena en la que se habla del aspecto que deberían tener, para que nuestro código sea limpio, los nombres, funciones, comentarios, clases, objetos, estructuras de datos, el manejo de errores y las pruebas unitarias.

El capítulo dedicado a las funciones, por ejemplo, explica que la primera regla al escribir funciones es que tienen que ser cortas; la segunda, que tienen que ser aún más cortas. También habla de la necesidad de que cada función haga una única cosa (SRP), de limitar el nivel de anidamiento y el número de parámetros, o de por qué los parámetros booleanos a modo de flag son una mala señal.

La segunda parte es el trabajo duro, donde realmente interiorizamos los conceptos que hemos estado leyendo. Consiste en un par de capítulos con casos de estudio reales (JUnit y SerialDate) en los que tienes la posibilidad de ver cómo y por qué se aplican distintas refactorizaciones para obtener, paso a paso, un código mucho más legible. Ambos ejemplos están escritos en Java, aunque no es necesario conocer el lenguaje para seguirlos. Sólo estar familiarizados con lenguajes similares.

La tercera y última parte consiste en un resumen de los olores y heurísticas explicados a través del libro, que puede servir a modo de repaso y referencia, y para empapelar la pared de alguna que otra oficina que yo conozco.

Si terminas por leer Clean Code, cosa que recomiendo encarecidamente, y te quedas con ganas de más, también me gustaría recomendarte Code Complete, uno de mis libros preferidos sobre programación. Cambiarán totalmente tu forma de entender la programación.

Comentarios
  1. Kenneth

    Actualmente estoy estudiando JAVA, sueño con llegar a tener una empresa dedicada al desarrollo de software en Rep. Dominicana ya que es un hueco que nadie ha llenado en este pais.

    Voy a comprar el libro que has recomendado, ya lo he visto en amazon.com.

    Gracias.

    Responder

  2. Este libro es realmente bueno, a mi me gusto mucho porque me sirvio para aprender y mejorar muchas cosas.

    Te recomiendo Code Complete, que tambien lo estoy leyendo y va por buen camino.

    Responder

  3. the_maco

    Buen post, gracias por la recomendación hace ratos lo tengo en la wishlist pero ya me decidi a leerlo. Cuando termine te cuento que me pareció 😛

    He oido que los libros de Fowler también son buenos, alguna recomendación?

    Responder

    • Refactoring, UML Distilled y Patterns of enterprise application architecture, principalmente.

      Responder

  4. the_maco

    Gracias, por cierto ya comencé Clean Code se ve prometedor

    Responder

  5. se ve chido el librito

    Responder

  6. […] aunque también nos encontraremos con un par de artículos del conocido Uncle Bob, autor de Clean Code, entre […]

    Responder

  7. […] siguen los boy scout a la hora de acampar, muy bien explicada por Uncle Bob en su fantástico libro Clean Code: Deja siempre el campamento más limpio de como lo […]

    Responder

  8. […] siguen los boy scout a la hora de acampar, muy bien explicada por Uncle Bob en su fantástico libro Clean Code: Deja siempre el campamento más limpio de como lo […]

    Responder

Deja un comentario