卓有成效的程序员(影印版)
卓有成效的程序员(影印版)
Neal Ford
出版时间:2009年12月
页数:206
任何一个以开发软件为生的人都需要掌握一种经过实践检验的方法,来使自己工作得更好、更快、更高效。《卓有成效的程序员》在“如何节省时间”方面提供了宝贵意见和实用工具,无论你使用何种平台,都能立刻应用于其中。大师级的开发者Neal Ford不仅提供了关于提高生产力的建议:如何更明智地工作,排除干扰,充分利用计算机,以及避免重复;同时他还详细介绍了许多有价值的实践经验,帮助你规避常见陷阱,改善代码,从而为团队创造更大的价值。
你将学习到如何:
· 在写代码前先写测试
· 一丝不苟地管理你的对象的生命周期
· 只做你现在必须要做的,而非你将来可能要做的
· 将古老的哲学应用到软件开发当中
· 敢于质疑权威,而不是盲目遵从标准
· 利用元编程,将困难转为容易,化不可能为可能
· 确保同一方法中的所有代码处于同一个抽象层面
· 选择合适的编辑器,打造最佳工具组合
这些不是空泛的理论,而是Ford现实的经验成果。不论你是初学者还是富有多年经验的专家,《卓有成效的程序员》中简单而直接的原则对你的工作和职业生涯都将有所裨益。
Neal Ford是全球IT咨询公司ThoughtWorks的应用软件构架师。他曾在美国和其他国家进行实地授课,对象包括军方和多家《财富》500强企业。

  1. FOREWORD
  2. PREFACE
  3. 1 INTRODUCTION
  4. Why a Book on Programmer Productivity?
  5. What This Book Is About
  6. Where to Go Now?
  7. Part One MECHANICS
  8. 2 ACCELERATION
  9. Launching Pad
  10. Accelerators
  11. Macros
  12. Summary
  13. 3 FOCUS
  14. Kill Distractions
  15. Search Trumps Navigation
  16. Find Hard Targets
  17. Use Rooted Views
  18. Use Sticky Attributes
  19. Use Project-Based Shortcuts
  20. Multiply Your Monitors
  21. Segregate Your Workspace with Virtual Desktops
  22. Summary
  23. 4 AUTOMATION
  24. Don’t Reinvent Wheels
  25. Cache Stuff Locally
  26. Automate Your Interaction with Web Sites
  27. Interact with RSS Feeds
  28. Subvert Ant for Non-Build Tasks
  29. Subvert Rake for Common Tasks
  30. Subvert Selenium to Walk Web Pages
  31. Use Bash to Harvest Exception Counts
  32. Replace Batch Files with Windows Power Shell
  33. Use Mac OS X Automator to Delete Old Downloads
  34. Tame Command-Line Subversion
  35. Build a SQL Splitter in Ruby
  36. Justifying Automation
  37. Don’t Shave Yaks
  38. Summary
  39. 5 CANONICALITY
  40. DRY Version Control
  41. Use a Canonical Build Machine
  42. Indirection
  43. Use Virtualization
  44. DRY Impedance Mismatches
  45. DRY Documentation
  46. Summary
  47. Part Two PRACTICE
  48. 6 TEST-DRIVEN DESIGN
  49. Evolving Tests
  50. Code Coverage
  51. 7 STATIC ANALYSIS
  52. Byte Code Analysis
  53. Source Analysis
  54. Generate Metrics with Panopticode
  55. Analysis for Dynamic Languages
  56. 8 GOOD CITIZENSHIP
  57. Breaking Encapsulation
  58. Constructors
  59. Static Methods
  60. Criminal Behavior
  61. 9 YAGNI
  62. 10 ANCIENT PHILOSOPHERS
  63. Aristotle’s Essential and Accidental Properties
  64. Occam’s Razor
  65. The Law of Demeter
  66. Software Lore
  67. 11 QUESTION AUTHORITY
  68. Angry Monkeys
  69. Fluent Interfaces
  70. Anti-Objects
  71. 12 META-PROGRAMMING
  72. Java and Reflection
  73. Testing Java with Groovy
  74. Writing Fluent Interfaces
  75. Whither Meta-Programming?
  76. 13 COMPOSED METHOD AND SLAP
  77. Composed Method in Action
  78. SLAP
  79. 14 POLYGLOT PROGRAMMING
  80. How Did We Get Here? And Where Exactly Is Here?
  81. Where Are We Going? And How Do We Get There?
  82. Ola’s Pyramid
  83. 15 FIND THE PERFECT TOOLS
  84. The Quest for the Perfect Editor
  85. The Candidates
  86. Choosing the Right Tool for the Job
  87. Un-Choosing the Wrong Tools
  88. 16 CONCLUSION: CARRYING ON THE CONVERSATION
  89. APPENDIX: BUILDING BLOCKS
  90. INDEX
书名:卓有成效的程序员(影印版)
作者:Neal Ford
国内出版社:东南大学出版社
出版时间:2009年12月
页数:206
书号:978-7-5641-1924-9
原版书出版商:O'Reilly Media
Neal Ford
 
作为一名软件架构师与意见领袖,Neal Ford供职于ThoughtWorks(一家专注于端到端软件开发与交付的跨国IT咨询公司)。在加入ThoughtWorks之前,Neal是The DSW Group, Ltd.的技术总监 ── 这是一家在美国还算有名的培训与软件开发公司。Neal毕业于乔治亚州立大学,他拥有计算机科学的学位,专攻语言与编译器;同时他还辅修数学,专攻统计分析。现在他是一名软件设计师和开发者,此外也编撰培训材料、杂志文章和视频演讲,他还是几本图书的作者,包括《Developing with Delphi:Object-Oriented Techniques》(由Prentice-Hall出版)、《Jbuilder 3 Unleashed》(由Sams出版)和《Art of Java Web Development》(由Manning出版)等。他曾担任2006和2007版《No Fluff, Just Stuff文选》(Pragmatic Bookshelf)的编辑和作者。他擅长的编程语言包括Java、C#/.NET、Ruby、Groovy、函数式语言、Scheme、Object Pascal、C++和C等。他的咨询工作主要针对大规模企业应用的设计和开发。Neal曾在美国和其他国家进行现场授课,客户包括军方和很多世界500强的企业。作为演讲者,他同样在全球享有盛名,曾在世界各地举办的各种大型开发者会议上发表超过600场演讲。如果有兴趣了解更多关于Neal的信息,请访问他的网站:http://www.nealford.com。他也希望得到读者的反馈,他的邮件地址是nford@ thoughtworks.com。
Neal Ford a is software architect and Meme Wrangler at ThoughtWorks, a global IT consultancy
with an exclusive focus on end-to-end software development and delivery. Before joining
ThoughtWorks, Neal was the chief technology officer at The DSW Group, Ltd., a nationally
recognized training and development firm. Neal has a degree in computer science, specializing
in languages and compilers, from Georgia State University and a minor in mathematics,
specializing in statistical analysis. He is also the designer and developer of applications,
instructional materials, magazine articles, video presentations, and author of the books
Developing with Delphi: Object-Oriented Techniques (Prentice-Hall), JBuilder 3 Unleashed
(Sams), and Art of Java Web Development (Manning). He was editor of and contributor to the
2006 and 2007 editions of the No Fluff, Just Stuff Anthology (Pragmatic Bookshelf). His
language proficiencies include Java, C#/.NET, Ruby, Groovy, functional languages, Scheme,
Object Pascal, C++, and C. His primary consulting focus is the design and construction of largescale
enterprise applications. Neal has taught on-site classes nationally and internationally to
the military and to many Fortune 500 companies. He is also an internationally acclaimed
speaker, having spoken at over 100 developer conferences worldwide, delivering more than
600 talks. If you have an insatiable curiosity about Neal, visit his web site at http://
www.nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.
 
 
The cover image is a stock photograph from Corbis.