A Live Developer Journal

Reading notes from preface to growing oo software

Reading notes based on Growing Object-Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce

These are just some quick notes about what is covered in the preface. Usually, authors condense their preface into the key things that they want you to take away from a book. I'm capturing them here so that I can look out for them in the book itself.

Problems this book addresses


Structure of the book

  1. A high-level introduction to TDD, mock-objects and object-oriented design.
  2. The process of TDD, including how to get started and how to keep moving. How the principles of TDD and OO support each other, and how to work with external code.
  3. How the authors develope an object-oriented application in a test-driven manner, including trade-offs and motivations for the decisions that are made. Also shows how some features of TDD become more significant as the code starts to scale up.
  4. Some practices for keeping a system maintainable, clean and expressive. Also discusses some practices the authors have adopted and why
  5. More advanced topics that look at areas where TDD is more difficult: complex test data, persistence, concurrency. Showing how the authors deal with these issues and how this affects the design of the code and tests.
  6. Appendices include some supporting material on jMock and Hamcrest.