Monday, December 29, 2008

Test Driven Development or The Robotics Primer

Test Driven Development: By Example

Author: Kent Beck

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 whattests 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



    Table of Contents:
    Preface
    Acknowledgments
    Introduction
    Pt. IThe Money Example1
    Ch. 1Multi-Currency Money3
    Ch. 2Degenerate Objects11
    Ch. 3Equality for All15
    Ch. 4Privacy19
    Ch. 5Franc-ly Speaking23
    Ch. 6Equality for All, Redux27
    Ch. 7Apples and Oranges33
    Ch. 8Makin' Objects35
    Ch. 9Times We're Livin' In39
    Ch. 10Interesting Times45
    Ch. 11The Root of All Evil51
    Ch. 12Addition, Finally55
    Ch. 13Make It61
    Ch. 14Change67
    Ch. 15Mixed Currencies73
    Ch. 16Abstraction, Finally77
    Ch. 17Money Retrospective81
    Pt. IIThe xUnit Example89
    Ch. 18First Steps to xUnit91
    Ch. 19Set the Table97
    Ch. 20Cleaning Up After101
    Ch. 21Counting105
    Ch. 22Dealing with Failure109
    Ch. 23How Suite It Is113
    Ch. 24xUnit Retrospective119
    Pt. IIIPatterns for Test-Driven Development121
    Ch. 25Test-Driven Development Patterns123
    Ch. 26Red Bar Patterns133
    Ch. 27Testing Patterns143
    Ch. 28Green Bar Patterns151
    Ch. 29xUnit Patterns157
    Ch. 30Design Patterns165
    Ch. 31Refactoring181
    Ch. 32Mastering TDD193
    App. I: Influence Diagrams207
    App. IIFibonacci211
    Afterword215
    Index217

    Book about: Eat More Weigh Less or Weight Watchers Great Cooking Every Day

    The Robotics Primer

    Author: Maja J Mataric

    The Robotics Primer offers a broadly accessible introduction to robotics for students at pre-university and university levels, robot hobbyists, and anyone interested in this burgeoning field. The text takes the reader from the most basic concepts (including perception and movement) to the most novel and sophisticated applications and topics (humanoids, shape-shifting robots, space robotics), with an emphasis on what it takes to create autonomous intelligent robot behavior. The core concepts of robotics are carried through from fundamental definitions to more complex explanations, all presented in an engaging, conversational style that will appeal to readers of different backgrounds.

    The Robotics Primer covers such topics as the definition of robotics, the history of robotics ("Where do Robots Come From?"), robot components, locomotion, manipulation, sensors, control, control architectures, representation, behavior ("Making Your Robot Behave"), navigation, group robotics, learning, and the future of robotics (and its ethical implications). To encourage further engagement, experimentation, and course and lesson design, The Robotics Primer is accompanied by a free robot programming exercise workbook.

    The Robotics Primer is unique as a principled, pedagogical treatment of the topic that is accessible to a broad audience; the only prerequisites are curiosity and attention. It can be used effectively in an educational setting or more informally for self-instruction. The Robotics Primer is a springboard for readers of all backgrounds--including students taking robotics as an elective outside the major, graduate studentspreparing to specialize in robotics, and K-12 teachers who bring robotics into their classrooms.



    No comments:

    Post a Comment