Growing Object-Oriented Software, Guided by Tests (Paperback)

Steve Freeman, Nat Pryce

  • 出版商: Addison Wesley
  • 出版日期: 2009-10-01
  • 售價: $2,200
  • 貴賓價: 9.5$2,090
  • 語言: 英文
  • 頁數: 384
  • 裝訂: Paperback
  • ISBN: 0321503627
  • ISBN-13: 9780321503626
  • 相關分類: Object-oriented
  • 立即出貨




Foreword by Kent Beck


"The authors of this book have led a revolution in the craft of programming by controlling the environment in which software grows.” --Ward Cunningham


“At last, a book suffused with code that exposes the deep symbiosis between TDD and OOD. This one's a keeper.” --Robert C. Martin


“If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book.”--Michael Feathers


Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this "simple" idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and “grow” software that is coherent, reliable, and maintainable.


Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you’ll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD--from integrating TDD into your processes to testing your most difficult features. Coverage includes


•   Implementing TDD effectively: getting started, and maintaining your momentum

    throughout the project

•   Creating cleaner, more expressive, more sustainable code

•   Using tests to stay relentlessly focused on sustaining quality

•   Understanding how TDD, Mock Objects, and Object-Oriented Design come together

    in the context of a real software development project

•   Using Mock Objects to guide object-oriented designs

•   Succeeding where TDD is difficult: managing complex test data, and testing persistence

    and concurrency



這本書的作者通過控制軟體成長的環境,引領了程式設計的革命。--Ward Cunningham

終於有一本充滿程式碼的書籍,揭示了測試驅動開發(TDD)和物件導向設計(OOD)之間的深層共生關係。這本書是一本值得收藏的書籍。--Robert C. Martin

如果你想成為TDD的專家,你需要理解這本書中的理念。--Michael Feathers


Steve Freeman和Nat Pryce描述了他們使用的流程、他們努力實現的設計原則,以及幫助他們完成工作的一些工具。通過一個延伸的實例,你將學習TDD在多個層次上的運作方式,使用測試來驅動程式碼的功能和物件導向結構,並使用模擬物件來發現並描述物件之間的關係。在此過程中,本書系統地解決了開發團隊在TDD中遇到的挑戰,從將TDD整合到流程中到測試最困難的功能。


- 有效實施TDD:入門和保持動力
- 創建更乾淨、更表達性、更可持續的程式碼
- 使用測試持續關注品質
- 理解TDD、模擬物件和物件導向設計如何結合在一個真實的軟體開發項目中
- 使用模擬物件來引導物件導向設計
- 在TDD困難的情況下取得成功:管理複雜的測試數據,以及測試持久性和並發性。