CÓDIGO LIMPIO. MANUAL DE ESTILO PARA EL DESARROLLO DE SOFTWARE, 2ª Edición, año 2026
Este libro superventas, segunda edición de 'Código limpio', Robert C. Martin ("Uncle Bob") revitaliza la guía clásica para la artesanía del software con perspectivas actualizadas, un alcance más amplio y contenido enriquecido. está preparada para transformar el modo en que los desarrolladores abordan la creación de código y promueve un compromiso más profundo con el arte de escribir código limpio, flexible y sostenible.
INCLUIDO ENVÍO POR AGENCIA E IVA con entrega en 3-4 DÍAS en España para pagos previos (salvo Baleares, Canarias, Ceuta y Melilla). DESCUENTOS del 10% a partir de la compra de 3 libros y del 15% si compra 5 libros o más.
Detalles del libro
- Año
- 2026 (2ª Edición actualizada)
- Nº Páginas
- 664 con más de 400 ilustraciones en blanco y negro y EN COLOR (fotografías,dibujos, cuadros)
- Autor
- Robert C. Martin
- Tamaño
- 27 x 19 cm - Peso: 1,200 Kg - Rústica
- ISBN
- 9788441553019
Con la segunda edición de 'Código limpio', Robert C. Martin ("Uncle Bob") revitaliza la guía clásica para la artesanía del software con perspectivas actualizadas, un alcance más amplio y contenido enriquecido. Esta nueva edición, una reescritura completa del superventas original, está preparada para transformar el modo en que los desarrolladores abordan la creación de código y promueve un compromiso más profundo con el arte de escribir código limpio, flexible y sostenible.
El libro se divide en cuatro partes: prácticas básicas de escritura de código, principios de diseño y heurísticas, arquitectura de alto nivel y ética de la artesanía. Desafía a los lectores a evaluar la calidad del código de manera crítica y a reevaluar sus valores profesionales y, al final, los guía hacia la producción de un software mejor.
Esta edición incluye una cobertura ampliada de las disciplinas de las pruebas, los principios de diseño y arquitectura y múltiples lenguajes de programación. * Principios de diseño y arquitectura integrados con prácticas de creación de código. * Cobertura de más lenguajes, incluidos Java, JavaScript, Go, Python, Clojure, C# y C. * Estudios de caso para ejercicios prácticos de transformación de código. * Técnicas para escribir buenos nombres, funciones, objetos y clases. * Gestión de errores y prácticas de pruebas completas. * Estrategias para dar al código un formato que garantice la máxima legibilidad. * Uso productivo de herramientas de IA para la creación de código. * Habilidades blandas y ética de la programación. * Principios SOLID de diseño de software. * Gestión de las dependencias para un código flexible y reutilizable. * Prácticas profesionales y compensaciones en el diseño orientado a objetos.
Recurso indispensable para desarrolladores, arquitectos y jefes de proyecto. No solo aspira a mejorar las habilidades técnicas, sino también a cultivar un comportamiento profesional que valore el código limpio, flexible y sostenible.
INDICE COMPLETO DEL LIBRO:
Prólogo
Introducción
Introducción (de hace mucho tiempo)
1. Código limpio
Habrá código
Mal código
El arte del código limpio
Juntarlo todo
Leemos más de lo que escribimos
La regla de los 'boy scouts'
Parte I . Código
2. ¡Limpie ese código!
El proceso de limpieza
Conclusión
Posdata: El Bob del Futuro juega con Grok3
Conclusión de la posdata
3. Primeros principios
Todo pequeño, con buenos nombres, organizado y ordenado
Un ejemplo más significativo
Un último pensamiento
4. Nombres con significado
Use nombres que revelen la intención
Últimas palabras
5. Comentarios
Compensar el fracaso
Comentarios buenos
Comentarios malos
Conclusión
6. Formato
El propósito de la aplicación de formatos
Formato vertical
Formato horizontal
Reglas de equipo
Reglas de formato de Uncle Bob
7. Funciones limpias
¡Tamaño reducido!
Leer el código de arriba abajo: la regla descendente
Sentencias switch
Funciones limpias: una mirada más profunda
Conclusión
8. Heurística de las funciones
Argumentos de funciones
Command Query Separation
Mejor excepciones que devolver códigos de error
No se repita
Efectos secundarios
Programación estructurada
Esto es demasiado para tenerlo siempre en mente
Conclusión
9. El método limpio
Hágalo bien
Ejemplo
Conclusión
10. Una cosa
Refactorización por extracción de métodos
A todo esto, ¿qué son las funciones grandes?
Conclusión
11. Sea educado
La metáfora del periódico
La regla descendente: una vez más
La montaña rusa de la abstracción
Así es como escribimos, pero no como queremos leer
12. Objetos y estructuras de datos
¿Qué es un objeto?
Abstracción de datos
Antisimetría datos/objetos
La ley de Deméter
Objetos de transferencia de datos
Sentencias switch
La compensación OO/procedimental
Pero ¿qué pasa con el rendimiento?
Conclusión
13. Clases limpias
Clases y módulos frente a archivos
¿Qué debería contener una clase?
14. Disciplinas de pruebas
Disciplina 1: Desarrollo guiado por pruebas (TDD)
Disciplina 2: 'Test && Commit' || 'Revert' (TCR)
Disciplina 3: Paquetes pequeños
Diseño
Disciplina
Mantener las pruebas limpias
Las pruebas habilitan lo -ible
15. Pruebas limpias
Lenguaje de pruebas específico del dominio
F.I.R.S.T.
Diseño de pruebas
Conclusión
16. Pruebas de aceptación
La disciplina de las pruebas de aceptación
Conclusión
17. IA, LLM y Dios sabe qué más
Programación mediante 'prompts'
Conclusión
Parte II. Diseño
18. Diseño simple
YAGNI
Cubierto por pruebas
Maximizar la expresión
Minimizar la duplicación
19. Los principios SOLID
SRP: el principio de responsabilidad única
OCP: el principio de abierto-cerrado
LSP: el principio de sustitución de Liskov
ISP: el principio de segregación de interfaces
DIP: el principio de inversión de dependencias
20. Principios de componentes
Componentes
Breve historia de los componentes
Cohesión de los componentes
Acoplamiento de componentes
Conclusión
21. Diseño continuo
Cambio continuo
Diseño continuo
Navegar por las cuatro C del diseño continuo
¿Cuándo más diseñamos?
22. Concurrencia
¿Por qué la concurrencia?
Principios de defensa de la concurrencia
Actualización en 2025 e informe de campo
Conclusión
Parte III. Arquitectura
23. Los dos valores del software
Mantener las opciones abiertas
24. Independencia
Casos de uso
Funcionamiento
Desarrollo
Despliegue
Dejar opciones abiertas
25. Límites arquitectónicos
¿Qué líneas trazar y cuándo?
Arquitectura de 'plugins'
Caso práctico: FitNesse
Conclusión
26. Límites limpios
'Framework' de IoT de tercero: mogollón de límites
Limite interfaz de usuario/aplicación
Límites limpios
27. La arquitectura limpia
La regla de la dependencia
Conclusión
Parte IV. Artesanía
28. Daño
No causar daño a la sociedad
No causar daño a la función
No causar daño a la estructura
'Soft520'
Pruebas
29. Sin defectos en comportamiento ni estructura
Hacerlo bien
Programadores como partes interesadas
Hágalo lo mejor posible
30. Demostración repetible
Dijkstra
Programación estructurada
Descomposición funcional
Desarrollo guiado por pruebas 'et al.'
31. Ciclos pequeños
La historia del control del código fuente
Integración continua
Ramas frente a 'toggles'
Despliegue continuo
Construcción continua
32. Mejora incesante
Cobertura de las pruebas
Prueba de mutaciones
Estabilidad semántica
Limpieza
Creaciones
33. Mantener una productividad alta
Viscosidad
Gestión de las distracciones
Gestión del tiempo
34. Trabaje como un equipo
Programación colaborativa
Oficina abierta/virtual
35. Haga estimaciones honestas y justas
Mentiras
Honestidad, exactitud, precisión
Lecciones que yo viví
Exactitud y precisión
Agregación
Honestidad
Presión
36. Respete a sus colegas programadores
37. Nunca deje de aprender
Epílogo
Apéndice. El debate del código limpio
Presentaciones
Longitud de los métodos
Resumen de la longitud de los métodos
Comentarios
Resumen de los comentarios
Reescritura de John de PrimeGenerator
Historia de dos programadores
Reescritura de Bob de PrimeGenerator2
Desarrollo guiado por pruebas
Resumen del TDD
Observaciones finales
Bibliografía
Índice alfabético