Even bad code can function. But if code isn't clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn't have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and make you a better programmer but only if you work at it. What kind of work will you be doing? You'll be reading code - lots of code. And you will be challenged to think about what's right about that code, and what's wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft. Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code - of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and "smells" gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code. Readers will come away from this book understanding
‣ How to tell the difference between good and bad code ‣ How to write good code and how to transform bad code into good code ‣ How to create good names, good functions, good objects, and good classes ‣ How to format code for maximum readability ‣ How to implement complete error handling without obscuring code logic ‣ How to unit test and practice test-driven development
This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.
Robert Cecil Martin, commonly called Uncle Bob, is a software engineer, advocate of Agile development methods, and President of Object Mentor Inc. Martin and his team of software consultants use Object-Oriented Design, Patterns, UML, Agile Methodologies, and eXtreme Programming with worldwide clients.
He was Editor in Chief of the C++ Report from 1996 to 1999. He is a featured speaker at international conferences and trade shows.
Entiendo que sea un clásico, pero el hecho de que no solo los ejemplos sino todo el libro está escrito en torno a Java hace que me haya resultado dificil de seguir. No obstante, las partes que si he entendido me han parecido muy buenas
Un imprescindible para ayudar a todo aquel desarrollador de software a escribir programas que no solo cumplan con su cometido sino hacerlo de forma que resulten escalables y mantenibles, ya sea por otros o por nosotros mismos.
otro más que leí bastante por encima, pero podría fácilmente llamarse "reglas éticas y morales de la programacion" porque poner nombre de variables feos o comentarios inutiles es bastante de mala persona, malvada
A través de Clean Code, Robert C. Martin nos trae una más que extensa y exhaustiva recopilación de temas y de prácticas en los que el código limpio tiene algo que decir. Y es que, en definitiva, el código limpio es una responsabilidad de vital importancia para cada uno de los desarrolladores del mundo para consigo mismo y para el resto de la comunidad. La programación es una actividad que cada vez más raramente se practica en solitario. Es, al fin y al cabo, comunicación. Escatimar en la limpieza del código conduce a una deuda de eficiencia que termina por destruir la productividad del equipo de forma segura, y por lo tanto las enseñanzas que la experiencia de Robert C. Martin que en su libro nos vierte tienen a convertirse prácticamente en el credo de cualquier programador que se precie. Es, en palabras del autor, condición indispensable para hacerse llamar profesional.
Estas ideas se desprenden con tan solo leer la contraportada y las primeras páginas del libro, y terminada su lectura se pueden suscribir estas palabras. Con indicaciones tanto de índole general como especialmente concretas, con una variedad de temas tan amplia (como el desarrollo enfocado a test, o la concurrencia), Clean Code es sin duda alguna el manual del buen hacer por antonomasia de esta profesión así como una referencia a la que conviene regresar cada cierto tiempo para refrescar las buenas prácticas, para autoevaluarse, para adecentar la actitud de uno mismo como programador y así guardarle respeto a nuestra carrera.
Con total seguridad, cuando mi experiencia en este mundo sea algo menos humilde que aquella de la que ahora puedo hacer gala, una segunda visita a las guías de Robert C. Martin me ayudará a adoptar un conocimiento más profundo de las técnicas que describe. No obstante, mi primer paso por sus páginas me han permitido retener muchas de las enseñanzas del autor, y yo mismo he podido comprobar en mi labor que han hecho de mí un artesano del software más profesional.
Este es un must-read para todas las personas que programen o desarrollen, aunque este en Java, sin embargo, personalmente se me hizo muy tecnico por el mismo motivo puesto que hubiese preferido un libro un tanto mas "filosofico", quiza por mi experticia. Lastimosamente, las maximas a tener en cuenta para hacer codigo limpio o para detectar code smells se me hicieron muy cortas, entre ejemplos, explicaciones y codigo. Siento que abarcaron muchas cosas en un solo libro, quiza por la fecha en la que lo elaboraron, de todas formas disfrute las "lecciones de negocio" sobre FitNesse y que incluyeran un apartado para las pruebas. Me parecio exagerado que agregaran tal cual el codigo y sus ficheros de la biblioteca de fechas en Java, sin embargo comprendo el precedente que este lenguaje dejo sobre los demas.
El libro se centra en la importancia de escribir un código limpio y fácil de mantener mediante la utilización de los principios del desarrollo ágil de software. Analiza varias prácticas y técnicas de codificación que pueden ayudar a los programadores a escribir código que sea fácil de leer, comprender y modificar.
El libro incluye un conjunto integral de pautas y principios para que los desarrolladores escriban código limpio, junto con ejemplos y estudios de casos para ilustrar cómo aplicar estos principios en situaciones del mundo real. Enfatiza la importancia de la legibilidad, la simplicidad y la capacidad de prueba del código, y alienta a los desarrolladores a tomar posesión de su código y luchar por la mejora continua.
Como programadora que en específico usa mucho Java, lo encontré muy útil. Todavía soy estudiante, por lo que siento que a veces el libro me atacaba. (?) Tiene muchos puntos a su favor si estudias Java o si eres estudiante.
Considero que tiene algunos muy buenos consejos sobre todo si eres principiante. Contiene varios ejemplos, lo cual también es positivo. Quizá para una persona que no utilice mucho Java no le resulte tan útil como a un desarrollador de dicho lenguaje. Dicho esto, no le pongo mayor calificación (calificando su utilidad, por así decirlo) dado que tiene algunos consejos que al menos para mí, me resultan obvios, aunque no está de más tenerlos a la mano.
La mayoría de los principios detallados en este libro son universales y aplicables a cualquier lenguaje de programación, ofreciendo consejos útiles para escribir código más limpio. Sin embargo, como se menciona en otras reseñas, está muy orientado a la programación orientada a objetos y específicamente a Java. Por ello, si no sigues este paradigma, muchas partes del libro pueden no ser relevantes. A pesar de esto, contiene consejos valiosos, especialmente para principiantes y aquellos en sus primeros años de profesionales de la programación, y también sirve como recordatorio de buenas prácticas para los programadores más experimentados.
He terminado este libro, después de estarlo estudiando y aplicando sus recomendaciones paulatinamente, y siento que hay que hacer énfasis en algo importante: este conocimiento no sirve de mucho saberlo solo, debes compartirlo con tu equipo de trabajo y hacer acuerdos al respecto, si no, se siente como remar contra la corriente.
Además, hay que tomar en consideración que se usan ejemplos en Java y debemos aislar los conceptos para poder aplicarlos en otros stacks tecnológicos. Y también, considerar el uso actual de la IA y los agentes que podemos usar hoy por hoy. (Leer las recomendaciones que ha dado al respecto de la lectura de código que ha dado el mismo autor estos días en Twitter/X)
Sin duda es un libro que te enseña varias de las mejores practicas para poder mejorar tu escritura de codigo fuente. Me gusto tener la capacidad tomar nota de varias de estas practicas y poder aplicarlas directamente dentro de un proyecto colaborativo. Sin embargo siento que se debe de tener algun conocimiento previo de patrones de diseño antes de leerlo ya que el autor hace referencia a estos en algunos capitulos. No me gusto que los ultimos capitulos finales fueran sobre bibliotecas especificas de java, cuando buscaba algo agnostico al lenguaje.
Un libro que ayuda a todas las personas que están aprendiendo a desarrollar software, buenas prácticas que se pueden seguir para la construcción de una aplicación, tanto construcción de clases, funciones, detalles de la documentación, etc. Sin duda un libro imprescindible al que debes volver siempre que tengas dudas si estás haciendo las cosas bien.
Esté libro lo empecé a leer con mis amigos, lo que empezó como algo libre de responsabilidad e importancia termino en buenos puntos para mejorar como desarrollador de software.
Recomendable si quieres ser mejor profesionista en el area del Software.
Roberto C Martín es un gran perfecciónista del escribir un lenguaje limpio y no como una manera de mejorar en el trabajo sino como una filosofía de querer siempre mejorar en el desarrollo del Software, interesante libro de como pequeñas cosas pueden traer grandes problemas más adelante.
Libro claro y preciso de como tener buenas prácticas de programación. A pesar de que mucho de lo que dice suena obvio, de todas maneras rara vez lo implemento y en muchas otras ocasiones cometo los errores que él mismo menciona.
Lectura obligatoria para todos los desarrolladores al momento que inician su carrera. Más allá de que naturalmente, muchas cosas iran cambiando con el paso del tiempo, aunado a la experiencia que se va obteniendo al trabajar en el ambito profesional, deja mensajes y aprendizajes valiosos
no es tan malo como pensé. Tiene harta info útil. Pero se va al chancho con unos consejos. Básicamente cuando es bueno es bueno y cuando es malo se va a la mierda.
PD: leí la segunda edición, la primera edición me tinca que era aún más inflexible
Libro absolutamente indispensable para aprender sobre arquitectura de software. Este libro marca un antes y un después en la vida de un programador. No leerlo es un crimen.
Hubiera sido excelente haber conocido este libro en los inicios de mi carrera. Tiene información realmente interesante que ayuda a mejorar lo que conocemos cómo limpio, bien hecho
Oldie but goldie. Para un tiquismiquis de la programación (como creo que todos los programadores debemos ser), este libro contiene axiomas imprescindibles.