shopping cart
Save up to 30% on our Staff Picks
Call us:  800-878-7323 HELP
McAfee SECURE helps keep you safe from identity theft, credit card fraud, spyware, spam, viruses and online scams.
Interviews | November 19, 2009

Dave: IMG Finding John Irving: The Powells.com Interview



johnirving[Editor's note: The following is a reprint of our 2005 interview with John Irving, whose new novel, Last Night in Twisted River, has just come out... Continue »
  1. $19.60 Sale Hardcover add to wish list

Test Driven Development: By Example (Addison-Wesley Signature)

by Kent Beck

Test Driven Development: By Example (Addison-Wesley Signature) Cover

Synopses & Reviews

Publisher Comments:

Clean code that works--now. This is the seeming contradiction that lies behind much of the pain of programming. Test-driven development replies to this contradiction with a paradox--test the program before you write it.

A new idea? Not at all. Since the dawn of computing, programmers have been specifying the inputs and outputs before programming precisely. Test-driven development takes this age-old idea, mixes it with modern languages and programming environments, and cooks up a tasty stew guaranteed to satisfy your appetite for clean code that works--now.

Developers face complex programming challenges every day, yet they are not always readily prepared to determine the best solution. More often than not, such difficult projects generate a great deal of stress and bad code. To garner the strength and courage needed to surmount seemingly Herculean tasks, programmers should look to test-driven development (TDD), a proven set of techniques that encourage simple designs and test suites that inspire confidence.

By driving development with automated tests and then eliminating duplication, any developer can write reliable, bug-free code no matter what its level of complexity. Moreover, TDD encourages programmers to learn quickly, communicate more clearly, and seek out constructive feedback.

Readers will learn to:

  • Solve complicated tasks, beginning with the simple and proceeding to the more complex.
  • Write automated tests before coding.
  • Grow a design organically by refactoring to add design decisions one at a time.
  • Create tests for more complicated logic, including reflection and exceptions.
  • Use patterns to decide what tests to write.
  • Create tests using xUnit, the architecture at the heart of many programmer-oriented testing tools.
  • This book follows two TDD projects from start to finish, illustrating techniques programmers can use to easily and dramatically increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. With its emphasis on agile methods and fast development strategies, Test-Driven Development is sure to inspire readers to embrace these under-utilized but powerful techniques.

    0321146530B10172002

    Book News Annotation:

    Presents an approach to writing software that emphasizes automated testing before and during coding. Written for advanced programmers, the book walks through two example projects—multi-currency arithmetic and the xUnit testing framework—and provides patterns for deciding what tests to write and how to write tests using xUnit. The code is written in Java and Python.
    Annotation c. Book News, Inc., Portland, OR (booknews.com)

    Synopsis:

    The approach outlined in this text is proven to reduce defects and produce more robust software. It shows how to write clean code that works teaching by example, with step-by-step instructions.

    Synopsis:

    Write clean code that works with the help of this groundbreaking software method. Example-driven teaching is the basis of Beck's step-by-step instruction that will have readers using TDD to further their projects.

    Synopsis:

    -- Write clean code that works with the help of this groundbreaking software method.

    -- Begin to write automated tests that allow you to "test on the fly, " and learn to optimize the practice of refactoring.

    -- Example-driven teaching; Kent Beck's step-by-step instruction will have you using TDD to further your projects.

    Quite simply, test-driven development is meant to eliminate fear in application development. While some fear is healthy (often viewed as a conscience that tells programmers to "be careful!"), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the author admits that grumpiness must be worked out individually! In short, the premise behind TDD is that code should be continually tested and refactored. Kent Beck teaches programmers by example, so they can painlessly and dramatically increase the quality of their work.

    About the Author

    Kent Beck consistently challenges software engineering dogma, promoting ideas like patterns, test-driven development, and Extreme Programming. Currently affiliated with Three Rivers Institute and Agitar Software, he is the author of many Addison-Wesley titles.

    Table of Contents

    Preface.

    Acknowledgments.

    Introduction.

    I. THE MONEY EXAMPLE.

     1. Multi-Currency Money.

     2. Degenerate Objects.

     3. Equality for All.

     4. Privacy.

     5. Franc-ly Speaking.

     6. Equality for All, Redux.

     7. Apples and Oranges.

     8. Makin' Objects.

     9. Times We're Livin' In.

    10. Interesting Times.

    11. The Root of All Evil.

    12. Addition, Finally.

    13. Make It.

    14. Change.

    15. Mixed Currencies.

    16. Abstraction, Finally.

    17. Money Retrospective.

    II. The xUnit Example.

    18. First Steps to xUnit.

    19. Set the Table.

    20. Cleaning Up After.

    21. Counting.

    22. Dealing with Failure.

    23. How Suite It Is.

    24. xUnit Retrospective.

    III. Patterns for Test-Driven Development.

    25. Test-Driven Development Patterns.

    26. Red Bar Patterns.

    27. Testing Patterns.

    28. Green Bar Patterns.

    29. xUnit Patterns.

    30. Design Patterns.

    31. Refactoring.

    32. Mastering TDD.

    Appendix I: Influence Diagrams.

    Appendix II: Fibonacci.

    Afterword.

    Index. 0321146530T10172002

    Product Details

    ISBN:
    9780321146533
    Subtitle:
    By Example
    Author:
    Beck, Kent
    Publisher:
    Addison-Wesley Professional
    Location:
    Boston
    Subject:
    Programming - General
    Subject:
    Testing
    Subject:
    Programming - Software Development
    Subject:
    Computer software
    Subject:
    Computer programming
    Subject:
    Software Development & Engineering - General
    Subject:
    Computer software -- Testing.
    Subject:
    Computer software -- Development.
    Copyright:
    Edition Description:
    Paperback
    Series:
    Addison-Wesley Signature Series
    Publication Date:
    November 2002
    Binding:
    Paperback
    Grade Level:
    Professional and scholarly
    Language:
    English
    Illustrations:
    Yes
    Pages:
    240
    Dimensions:
    9.18x7.38x.60 in. 1.08 lbs.

    Other books you might like

    1. $65.50 New Hardcover add to wish list
    2. $40.00 Used Hardcover add to wish list
    3. $11.50 Used Trade Paper add to wish list
    4. $56.95 New Trade Paper add to wish list
    5. $30.00 Used Trade Paper add to wish list
    6. $46.00 Used Hardcover add to wish list

    Related Aisles

    • back to top

    Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and eBooks — here at Powells.com.