Growing Object-Oriented Software, Guided by Tests (A Kent Beck Signature Book)
Introduction is rather slow and uninteresting for someone already testing on day to day basis. Throughout half of the book there is a step by step introduction into the TDD - I did not care that much for this part. Especially in the end it was somehow hard to follow when the code base for the example grows - especially for a non-java programmer.
But the last 100 pages with the examples of how to write more maintai ...more
* Makes a strong case for testing: better design, faster feedback, user experience first, regression, and most importantly, the confidence to make changes quickly.
* Includes a nice walk through of an iterative, test driven development process of a small app.
* Lots of great examples of how "listening" to tests leads to better design (ie, what the "driven" really means in TDD).
* I learned a lot from the discussion of how to m ...more
Some time later, I started working with mocks as a way to isolate unit tests from "slow" dependencies, such as databases, trying to make them run more quickly. I didn't have much success, though, because I was still writing my tests in a classicist style.
This book helped open my eyes to how the "mockist" style really ...more
I did not realize how much I still have to learn about writing good object-oriented (OO) code, and about hewing to a tight test driven development (TDD) methodology, before I read Growing Object-Oriented Software, Guided By Tests. My education in OO and unit testing has been largely theoretical, with no time spent directly learning from experienced OO programmers; my best mentor was a COBOL coder. Books like Design Patterns: Elements of Reusable Object-Oriented Software, Patterns of Enterprise A...more
Nothing could be further from the truth.
I read a fair share of technical books, but this book is the only one in years that I immediately began to re-read again after finishing. It is easily one of the most import ...more
Ke knize bych měl jen ...more
Software teams often don't fail delivering the first version of a software. They fail ...more
I really liked the emphasis on making the software responsive to change along with separating acceptance and unit tests. The book uses Junit 4.6 and ther ...more
- Focus on the communication between objects.
- Ports and adapters architecture to separate the domain.
- Proper division between unit, integration and acceptance tests.
- Use test builders for complex test setup.
- Transactional tests are a hack bec ...more
Mijn enige verbeterpuntje zou zijn dat in de tekst zelf (het boek is verdeeld in een tekstgedeelte en een heel uitgebreid voorbeeld, wat een heel goed idee is) iets meer mini-voorbeeldjes toe te voegen om bv stellingen te illustreren. Dan hobbel je toch wat soepeler door de concepten heen.
Well worth the read, whether you're new to TDD or if you're a seasoned practitioner. Part I and II lay out how TDD works and the authors' philosophy with regard to writing software. Many other books describe TDD and the authors are candid when it comes to their personal practices. YMMV. Part III is a very comprehensive case study where they use the practices in anger, that is, trying to ac ...more
I finished Growing Object-Oriented Software Guided by Tests (GOOS) this afternoon. It’ a book that I sincerely hope I would have had the patience to read years ago. It answers one deceivingly simple question in software development that has bothered me for a long time: How to practice TDD (Test Driven Development)?
When I first heard about the Golden Rule of TDD – “Never write new functionality without a failing test”, I was quite skeptical about it. But after several years building so ...more
The book is split into two sections: a section on principles and guidelines and a section that showcases these principles.
The first section gathers together ways of building software can respond to changes in the plan - both during the building or the maintenance stage. It ties in the philosophy of testing, especially TDD, with hexagonal arch ...more
Additionally, the use of Java, jUnit, and jMock made the contents not highly relevant to my current line of work writing Objective-C. It is useful to have some insight into the Java world and how testing has influenced it, but Objective ...more
If you stuck in a middle - just skip several pages. The end of the boo ...more
On the other side, I was often finding myself skipping tens of pages at once. They were pages dealing with the sample application development. It could happen because I already had a lot of experience with TDD and there were no valuable inform ...more
Didn't really read it cover-to-cover, but I don't think you're meant to. Once you have the concepts down, this is the kind of book you leave on your shelf as a reference guide for later.
I might try to pick this up again if I want to dig deeper into architecting a large scale systems.
Read it if you're new to TDD, if not got get yourself a copy of "xUnit Test Patterns: Refactoring Test Code" book.
Goodreads is hiring!
Learn more »