导语
内容提要
《程序员修炼之道》之所以在全球范围内广泛传播,被一代代开发者奉为圭臬,盖因它可以创造出真正的价值:或编写出更好的软件,或探究出编程的本质,而所有收获均不依赖于特定语言、框架和方法。时隔20年的新版,经过全面的重新选材、组织和编写,覆盖哲学、方法、工具、设计、解耦、并发、重构、需求、团队等务实话题的最佳实践及重大陷阱,以及易于改造、复用的架构技术。本书极具洞察力与趣味性,适合从初学者到架构师的各阶层读者潜心研读或增广见闻。
目录
1.A Pragmatic Philosophy
Topic 1.It's Your Life
Topic 2.The Cat Ate My Source Code
Topic 3.Software Entropy
Topic 4.Stone Soup and Boiled Frogs
Topic 5.Good-Enough Software
Topic 6.Your Knowledge Portfolio
Topic 7.Communicate!
2.A Pragmatic Approach
Topic 8.The Essence of Good Design
Topic 9.DRY--The Evils of Duplication
Topic 10.Orthogonality
Topic 11.Reversibility
Topic 12.Tracer Bullets
Topic 13.Prototypes and Post-it Notes
Topic 14.Domain Languages
Topic 15.Estimating
3.The Basic Tools
Topic 16.The Power of Plain Text
Topic 17.Shell Games
Topic 18.Power Editing
Topic 19.Version Control
Topic 20.Debugging
Topic 21.Text Manipulation
Topic 22.Engineering Daybooks
4.Pragmatic Paranoia
Topic 23.Design by Contract
Topic 24.Dead Programs Tell No Lies
Topic 25.Assertive Programming
Topic 26.How to Balance Resources
Topic 27.Don't Outrun Your Headlights
5.Bend, or Break
Topic 28.Deeoupling
Topic 29.Juggling the Real World
Topic 30.Transforming Programming
Topic 31.Inheritance Tax
Topic 32.Configuration
6.Concurrency
Topic 33.Breaking Temporal Coupling
Topic 34.Shared State Is Incorrect State
Topic 35.Actors and Processes
Topic 36.Blackboards
7.While You Are Coding
Topic 37.Listen to Your Lizard Brain
Topic 38.Programming by Coincidence
Topic 39.Algorithm Speed
Topic 40.Refactoring
Topic 41.Test to Code
Topic 42.Property-Based Testing
Topic 43.Stay Safe Out There
Topic 44.Naming Things
8.Before the Project
Topic 45.The Requirements Pit
Topic 46.Solving Impossible Puzzles
Topic 47.Working Together
Topic 48.The Essence of Agility
9.Pragmatic Projects
Topic 49.Pragmatic Teams
Topic 50.Coconuts Don't Cut It
Topic 51.Pragmatic Starter Kit
Topic 52.Delight Your Users
Topic 53.Pride and Prejudice
Postface
Bibliography
Possible Answers to the Exercises
Index