BECK, KENT
Prólogo
	Prefacio
	Introducción
	
	Parte I. Preceptos de ordenación
		Capítulo 1. Cláusulas de guarda
		Capítulo 2. Código muerto
		Capítulo 3. Normalizar las simetrías
		Capítulo 4. Nueva interfaz, antigua implementación
		Capítulo 5. Orden de lectura
		Capítulo 6. Orden de cohesión
		Capítulo 7. Unir declaración e inicialización
		Capítulo 8. Variables aclaratorias
		Capítulo 9. Constantes aclaratorias
		Capítulo 10. Parámetros explícitos
		Capítulo 11. Separar sentencias
		Capítulo 12. Extraer funciones auxiliares
		Capítulo 13. Todo el código en un solo bloque
		Capítulo 14. Comentarios aclaratorios
		Capítulo 15. Borrar comentarios redundantes
	
	Parte II. Gestionar el orden
		Capítulo 16. Separar las ordenaciones
		Capítulo 17. Encadenar ordenaciones
		Capítulo 18. Tamaños de lote
		Capítulo 19. Ritmo
		Capítulo 20. Organización
		Capítulo 21. Primero, después, más tarde, nunca
	
	Parte III. Teoría
		Capítulo 22. Elementos relacionados con beneficios
		Capítulo 23. Estructura y comportamiento
		Capítulo 24. Economía: el valor temporal y la opcionalidad
		Capítulo 25. Un euro hoy vale más que un euro mañana
		Capítulo 26. Opciones
		Capítulo 27. Opciones frente a flujos de fondos
		Capítulo 28. Cambios en la estructura reversibles
		Capítulo 29. Acoplamiento
		Capítulo 30. Equivalencia de Constantine
		Capítulo 31. Acoplamiento frente a desacoplamiento
		Capítulo 32. Cohesión
		Capítulo 33. Conclusión
	Apéndice: referencias y lista de lecturas comentadas
	Índice alfabético 
El código desordenado es un fastidio. 'Limpiar' el código, para que sea más legible, requiere dividirlo en fragmentos manejables. El autor de esta guía práctica, Kent Beck, creador de la programación extrema y pionero de los patrones de diseño de software, sugiere cuándo y dónde podemos aplicar limpiezas u ordenaciones para mejorar el código, teniendo en mente al mismo tiempo la estructura general del sistema.En lugar de intentar dominar la ordenación del código de golpe, este libro permite probar algunos ejemplos que tienen sentido para el problema que se desee resolver. Si disponemos de una función grande que contiene muchas líneas de código, aquí aprenderemos a dividirla de una manera lógica en fragmentos más pequeños. En paralelo aprenderemos la teoría del diseño de software: acoplamiento, cohesión, flujos de fondos descontados y opcionalidad.Con este libro lograrás:* Comprender la teoría básica del funcionamiento del diseño de software y las fuerzas que actúan sobre él.* Explorar la diferencia entre los cambios en el comportamiento de un sistema y los cambios en su estructura.* Mejorar la experiencia de programación ordenando a veces primero y a veces después.* Aprender a realizar cambios de envergadura en pequeños pasos seguros.* Abordar el diseño de software como un ejercicio de relaciones humanas.