Kundenrezensionen


8 Rezensionen
5 Sterne:
 (5)
4 Sterne:
 (2)
3 Sterne:
 (1)
2 Sterne:    (0)
1 Sterne:    (0)
 
 
 
 
 
Durchschnittliche Kundenbewertung
Sagen Sie Ihre Meinung zu diesem Artikel
Eigene Rezension erstellen
 
 

Die hilfreichste positive Rezension
Die hilfreichste kritische Rezension


11 von 11 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen How to manage your legacy classes
Michael Feathers does a great job of introducing into the problems with legacy, untested code. He describes how to get difficult to test classes under test and have them refactored in order to improve your flexibility. The introduced practices are worthwhile to read, but sometimes you need to apply them to make sense of them.

Personally I liked the dependency...
Veröffentlicht am 13. August 2009 von M. Gärtner

versus
4 von 6 Kunden fanden die folgende Rezension hilfreich
3.0 von 5 Sternen Veraltet
Zunächst - ich bin ein großer Fan von Robert C. - Uncle Bob - Martin. Der Autor arbeitet für und mit Uncle Bob, ist selbst eine ähnlich große Legende, das Buch prinzipiell kein schlechtes Buch.
ABER:
Feathers Buch ist leider nicht so gut strukturiert und unterhaltsam, prägnant und korrekt geschrieben, wie ich das von seinem Mentor...
Vor 11 Monaten von Dooing veröffentlicht


Hilfreichste Bewertungen zuerst | Neueste Bewertungen zuerst

11 von 11 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen How to manage your legacy classes, 13. August 2009
Von 
M. Gärtner (Lage, Deutschland) - Alle meine Rezensionen ansehen
(REAL NAME)   
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Michael Feathers does a great job of introducing into the problems with legacy, untested code. He describes how to get difficult to test classes under test and have them refactored in order to improve your flexibility. The introduced practices are worthwhile to read, but sometimes you need to apply them to make sense of them.

Personally I liked the dependency breaking techniques and the seam theory in the book most. While reading through it, it got a bit hard to just read the book and don't practice anything related to the content. Make sure when buying and reading this book to plan in MUCH time to try things out.
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


10 von 10 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen Good collection of common-sense techniques., 19. Mai 2010
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
The methods to tackle legacy code, to start putting code under tests by breaking dependencies, aren't new or exciting; most experienced developers probably know how subclassing and simple refactorings can gradually bring pieces of spaghetti code into a test harness. (I would recommend that junior developers first read up on the basics, like "Refactoring" by Martin Fowler, and any good introduction to object-oriented design principles.)

Nonetheless, Michael Feather's discussion of changes to the worst and most hopeless legacy implementations provides useful material, accompanied by much example code. Its main focus is on mainstream OO-languages like Java, but also covers specialties for C++, procedural code, and scripting languages.

This book has the potential to become a classic, like the "Refactoring" book. In my opinion, it falls slightly short of it due to poor editing. (I have the 10th printing from May-2009.) Mostly, it's just sloppy mistakes like mismatches of class names in the code and accompanying description, or wrong highlighting of changes in a refactoring step, which is just a bit irritating when following along. But I also mentally stumbled over sidebars that have little connection to the surrounding text. Some techniques are shown in excruciating detail, while others gloss over very interesting areas with just a short page.

Michael did a great job with this book, I just wished for some more polish. I wholeheartedly recommend it to anyone that has to deal with inherited or existing code (thus, virtually every programmer); even the experienced developer will take something away from it.
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


4 von 4 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Gut strukturiert und an der Praxis orientiert, 28. Januar 2013
Von 
Juergen Schwab (Tübingen) - Alle meine Rezensionen ansehen
(REAL NAME)   
Verifizierter Kauf(Was ist das?)
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Man merkt, dass der Autor jahrelange Erfahrung hat mit der Beherrschung von "Legacy Code". Die Knackpunkte und das Vorgehen bei der Wartung/Erweiterung von legacy code sind konkret und kompakt dargestellt. Die Struktur des Buches orientiert sich zudem an den typischen Fragestellungen in diesem Kontext, z.B. wie man Änderungen an großen und/oder komplexen Methoden durchführt, ohne die bestehende Funktionalität zu zerstören. Oder wie man Unit-Tests in eng gekoppelten Komponenten einführt. Probleme, denen sich viele Entwickler gegenüber sehen, die an produktiven Anwendungen Änderungen oder Erweiterungen vornehmen sollen. Die einzelnen Kapitel des Buches sind an derartigen konkreten Fragen orientiert, was die Suche sehr erleichtert und das Lesen von vorne bis hinten überflüssig macht. Dieses Buch sollte an keinem Entwicklerarbeitsplatz fehlen!
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


3 von 3 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Interesting philosophy, 20. November 2010
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
This is a fascinating book. It really changed my outlook on unit testing. Previously, I had been under the impression that unit testing is something dogmatic. But the way the author approaches it is really eye-opening. For me, the most important part of the book is the philosophy how to go about testing legacy code. The technical part is also well-founded and all, but it was the philosophical aspect that really made me go "wow".
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


1 von 1 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Kondensat eines reichen Erfahrungsschatzes, 3. April 2014
Verifizierter Kauf(Was ist das?)
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Working Effectivly with Lagacy Code wird nicht umsonst zu den Klassikern der Software-Engineering-Literatur gezählt. Ausgehend von einer unorthodoxen, aber zielführenden Definition, was unter Legacy Code zu versehen ist - Code ohne ausreichende Testabdeckung - erklärt Feathers, wie man mit einer solchen Codebasis erfolgreich arbeiten kann. Es werden verschiedene Strategien diskutiert, die es einem erlauben Änderungen mit nur geringen Risiken durchzuführen. Das Hauptaugenmerk liegt dabei auf Strategien, durch die der Code besser durch Tests abgedeckt werden kann. Das das keine triviale Aufgabe ist, merkt man an der Vielzahl an Problemen, die Faethers zusammen mit ihren Lösungen aufführt.

Man merkt dem Buch an, dass sehr viel Erfahrung in seine Entstehung eingeflossen ist. Jeder, der schon mit Lagacy Code gearbeitet hat, wird bemerken, dass Feathers genau die Fragen anspricht, die in der Praxis von hoher Relevanz sind. Dennoch besteht der Inhalt nicht aus einem Sammelsurium unterschiedlicher Themen, sondern er bildet eine Einheit, in der die einzelnen Teile ineinander greifen. Das Buch ist ohne Einschränkungen zu empfehlen.
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


4 von 6 Kunden fanden die folgende Rezension hilfreich
3.0 von 5 Sternen Veraltet, 6. Januar 2014
Verifizierter Kauf(Was ist das?)
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Zunächst - ich bin ein großer Fan von Robert C. - Uncle Bob - Martin. Der Autor arbeitet für und mit Uncle Bob, ist selbst eine ähnlich große Legende, das Buch prinzipiell kein schlechtes Buch.
ABER:
Feathers Buch ist leider nicht so gut strukturiert und unterhaltsam, prägnant und korrekt geschrieben, wie ich das von seinem Mentor Uncle Bob gewohnt bin. Er schreibt, es sei kein Buch über Testing oder Test Driven Development. Auch sei die schlechte Code Qualität zu "entschuldigen", es wäre auch kein Buch über gute Codequalität. Design Patterns werden immer wieder kurz angerissen, aber, ihr ahnt es, es wird wieder auf die einschlägige Fachliteratur verwiesen. Das Buch soll nicht von vorne nach hinten, sondern im Querverweis Schema im Stile des Internets gelesen werden - dafür kaufe ich mir aber dann doch kein Buch? Zumindest mir persönlich sagen "lineare Bücher" mehr zu.
Die meisten Codebeispiele sind in Java gehalten, aber es gib auch einige Beispiele in C++, C und sogar ein Codebeispiel in Ruby. Auf mich wirkte das, als ob der Autor versucht, damit die Anzahl potentieller Leser und damit die Verkaufszahlen zu erhöhen. Die Codebeispiele gingen dabei oft auf jeweilige Besonderheiten der Sprache ein, und sind dadurch (was für mich relevant wäre) oft nicht auf Java übertragbar (weil z.B. aufgrund modernerer Syntax in Java gar nicht mehr nötig).
In dem Buch, das 2005 erschienen ist, wird in erster Linie gezeigt, wie man (ohne Mocking-Framworks) Legacy Code testbar machen kann, damit man dann im Anschluss (!) den Code optimieren kann – wobei dann aber größtenteils auf andere Bücher wie von Martin Fowler verwiesen wird.

Feathers oberstes Ziel ist es, die jeweilige Legacy Klasse, die man refaktoren möchte, in eine "Test-Harness" zu bringen, damit beim refaktoren nichts kaputt gehen kann. Diesem Ziel ordnet er (aufgrund begrenzt verfügbarer Entwicklungszeit) alle anderen Ziele unter - da werden schon mal Variablen oder Methoden public gemacht, Objektorientierte Prinzipien verletzt (was Feathers in späteren Iterationen ändern will, sobald zeitlich möglich),
Hauptsache, der Code wird asap testbar. Hier bin ich anderer Meinung. Die Ziele des Managements ändern sich meist dermaßen schnell, dass man nie weiß, wann und ob man (je) wieder die Möglichkeit bekommen wird, einen
Code ein weiteres Mal anzufassen. Also besser gleich richtig machen.

Zumindest für Java gilt - 2008 wurden Mockito und PowerMock veröffentlicht, durch die man heute wesentlich einfacher Unit Tests schreiben kann. Damit lassen sich dann auch private, finale, static... Legacy-Methoden testen, ohne den Code noch weiter verschlimmern zu müssen. Nach der Veröffentlichung von Mockito und PowerMock
ist meiner Meinung nach ein großer Teil des Buches heute überflüssig geworden, oder hat zumindest einiges an Prägnanz eingebüßt. Ein Update ist überfällig. Ansonsten ein Buch was man lesen kann, aber nicht muss.
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


5.0 von 5 Sternen Good book even for those, who do not practice unit testing., 13. Mai 2012
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Legacy code with long history and from many authors without development documentation has been the custom case in my work. I haven't practiced unit testing till yet. This book give advices how to extract more understandable parts from big classes or methods step by step.
Dilemma between "clean code" and necessity of including some concessions during testing has been mentioned. I would like to have discussion about introducing new parameters in extracted methods versus new member variables. (One of advices from the book "Clean Code" by Robert C. Martin)
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


1 von 3 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Genial!, 6. Juni 2013
Verifizierter Kauf(Was ist das?)
Rezension bezieht sich auf: Working Effectively with Legacy Code (Taschenbuch)
Dieses Buch sollte meiner Meinung nach eine Grundlektüre für jeden Informatiker darstellen, der Programmieraufgaben zu lösen hat. Robert C. Martin beschreibt darin die wichtigsten Methoden um mit Quellcode - egal wie alt - "glücklich" zu werden. Ich übertreibe nicht, wenn ich sage, dass dieses Buch meine Einstellung zur Programmierung und zur Informatik an sich grundlegend verändert hat!
Helfen Sie anderen Kunden bei der Suche nach den hilfreichsten Rezensionen 
War diese Rezension für Sie hilfreich? Ja Nein


Hilfreichste Bewertungen zuerst | Neueste Bewertungen zuerst

Dieses Produkt

Working Effectively with Legacy Code
Working Effectively with Legacy Code von Michael Feathers (Taschenbuch - 2009)
EUR 42,95
Auf Lager.
In den Einkaufswagen Auf meinen Wunschzettel
Nur in den Rezensionen zu diesem Produkt suchen