Manuskript: http://groups.yahoo.com/group/testdrivendevelopment/files/
Rezension |
Der erste Teil des Buches beschäftigt sich der testgetriebenen Entwicklung einer Einheit von Klassen zur Repräsentation von Währungen in der SpracheJava. Ziel soll es sein, unterschiedliche Währungen miteinander verrechnen zu können, also z.B. $5 + 10 CHF = $ 10 bei einem Kurs von 2:1. Das Beispiel ist realistisch, denn WardCunningham selbst stand vor diesem Problem, als sein Kunde diese Anforderungen an ein von Cunningham entwickeltes System stellte, welches bislang nur mit der einheimischen Währung Dollar klar kam.
Im mittleren Teil entwickelt Beck quasi aus dem Nichts das XUnitFramework? in der SprachePython. Python, weil Java bereits im ersten Teil zum Zug kam und JavaUnit? schon viel in anderer Literatur Ehre empfing. Für Beck war es nach eigener Aussage die ersten Schritte mit dieser Sprache und er nimmt daher auch Rücksicht auf den Pythonunkundigen Leser, indem er an vielen Stellen Eigenheiten der Sprache erläutert. Wer den Beck'schen Schritten folgt und fleißig mitprogrammiert, erhält bald ein rudimentäres Testtool, welches weiter ausbaufähig ist und fühlt sich der SprachePython aufgrund des guten Einstiegs in selbige sehr hingezogen.
In den beiden ersten Teilen hat der Leser die einzigartige Möglichkeit, dem Autor über die Schulter schauen zu dürfen und sozusagen in Realzeit die Entstehung einer Software beobachten zu dürfen. Beck beschreibt immer, was er warum tut. Sehr interessant sind diese Ausführungen besonders dann, wenn er vor einer gedanklichen Weggabelung aufzeigt, warum er nun gerade den einen und nicht den anderen Pfad geht. Die Kapitel sind recht kurz gehalten und daher in guten Häppchen verdaubar. Die Quintessenz der einzelnen Kapitel wird jeweils zum Ende eines Kapitels nochmals aufgezeigt, so daß ein sehr guter Lerneffekt entsteht. Sogar sein Notizzettel, auf dem er die nächsten Schritte festhält und die bereits erledigten durchstreicht, bleibt dem Leser nicht verborgen. Bis hierhin ein sehr gutes Lehrbuch!
Im dritten und letzten Teil des Buches dreht sich alles um Pattern aus dem TDD-Umfeld. Teilweise hat der Leser diese Pattern schon in den ersten beiden Kapiteln in Aktion gesehen, ohne sie als solche erkannt zu haben. Wer bereits viel TDD praktiziert hat, erkennt eigene Verhaltensweisen wieder und fühlt sich in ihrer Anwendung bestätigt. Darüber hinaus erhält der Entwickler viele Tipps und Tricks zum sofortigen praktischen Einsatz beim täglichen testgetriebenen Entwickeln. Absolut unschlagbar wäre dieser Abschnitt, wenn er die einzelnen Pattern noch ein wenig mehr beleuchtet hätte und beispielsweise seine Ansichten über die aufgeführten EntwurfsMuster mehr ausgeführt hätte.
Das Buch im Ganzen ist auf jeden Fall eine gute Einführung bzw. eine gute Vertiefung in das Thema TestgetriebeneEntwicklung und hat meine Erwartungen vollauf erfüllt. Beck ist ein sehr geschickert Lehrer und nimmt seine Schüler mit einigem Witz auf eine Reise durch eine schon recht geniale Idee mit.
Ja, ein wirklich sehr gutes Buch. Ich fand jedoch die ersten beiden Teile ein wenig langatmig - KentBeck geht wirklich sehr kleine Schritte. Ist vom didaktischen Standpunkt aus aber wahrscheinlich nicht das schlechteste.
Die Patterns im dritten Teil fand ich tatsächlich das Highlight des Buches - auch ein erfahrener TDDer kann hier nochmal einiges Reflektieren, Ordnen und neue Ideen fassen.
-- IljaPreuß