In weniger als einer Minute können Sie mit dem Lesen von Working Effectively with Legacy Code auf Ihrem Kindle beginnen. Sie haben noch keinen Kindle? Hier kaufen oder mit einer unserer kostenlosen Kindle Lese-Apps sofort zu lesen anfangen.

An Ihren Kindle oder ein anderes Gerät senden


Kostenlos testen

Jetzt kostenlos reinlesen

An Ihren Kindle oder ein anderes Gerät senden

Der Artikel ist in folgender Variante leider nicht verfügbar
Keine Abbildung vorhanden für
Keine Abbildung vorhanden

Working Effectively with Legacy Code (Robert C. Martin Series) [Kindle Edition]

Michael Feathers
4.6 von 5 Sternen  Alle Rezensionen anzeigen (9 Kundenrezensionen)

Kindle-Preis: EUR 32,21 Inkl. MwSt. und kostenloser drahtloser Lieferung über Amazon Whispernet

Kostenlose Kindle-Leseanwendung Jeder kann Kindle Bücher lesen  selbst ohne ein Kindle-Gerät  mit der KOSTENFREIEN Kindle App für Smartphones, Tablets und Computer.

Geben Sie Ihre E-Mail-Adresse oder Mobiltelefonnummer ein, um die kostenfreie App zu beziehen.

Weitere Ausgaben

Amazon-Preis Neu ab Gebraucht ab
Kindle Edition EUR 32,21  
Taschenbuch EUR 42,95  



Get more out of your legacy systems: more performance, functionality, reliability, and manageability


Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts.

In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control.

The topics covered include

  • Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance
  • Getting legacy code into a test harness
  • Writing tests that protect you against introducing new problems
  • Techniques that can be used with any language or platform—with examples in Java, C++, C, and C#
  • Accurately identifying where code changes need to be made
  • Coping with legacy systems that aren't object-oriented
  • Handling applications that don't seem to have any structure

This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.


This book provides programmers with the ability to cost effectively handlecommon legacy code problems without having to go through the hugelyexpensive task of rewriting all existing code. It describes a series of practicalstrategies that developers can employ to bring their existing softwareapplications under control. The author provides useful guidance about how touse these strategies when refactoring or making functional changes to codebases. One of the book's key points is that it teaches developers to write teststhat can be used to make sure they are not unintentionally changing theapplication as they optimize it. Examples are provided in Java, C++, and Csharp,and the book assumes that the reader has some knowledge of UMLnotation. Strategies using UML and code in C++ and Java primarily whilelanguage independent advice will be delivered in side bars and appendices forlanguage specific users.


  • Format: Kindle Edition
  • Dateigröße: 2170 KB
  • Seitenzahl der Print-Ausgabe: 456 Seiten
  • Gleichzeitige Verwendung von Geräten: Bis zu 5 Geräte gleichzeitig, je nach vom Verlag festgelegter Grenze
  • Verlag: Prentice Hall; Auflage: 1 (22. September 2004)
  • Verkauf durch: Amazon Media EU S.à r.l.
  • Sprache: Englisch
  • ASIN: B005OYHF0A
  • Text-to-Speech (Vorlesemodus): Aktiviert
  • X-Ray:
  • Word Wise: Nicht aktiviert
  • Durchschnittliche Kundenbewertung: 4.6 von 5 Sternen  Alle Rezensionen anzeigen (9 Kundenrezensionen)
  • Amazon Bestseller-Rang: #74.982 Bezahlt in Kindle-Shop (Siehe Top 100 Bezahlt in Kindle-Shop)

  •  Ist der Verkauf dieses Produkts für Sie nicht akzeptabel?

Mehr über den Autor

Entdecken Sie Bücher, lesen Sie über Autoren und mehr

Welche anderen Artikel kaufen Kunden, nachdem sie diesen Artikel angesehen haben?


4.6 von 5 Sternen
4.6 von 5 Sternen
Die hilfreichsten Kundenrezensionen
10 von 10 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen Good collection of common-sense techniques. 19. Mai 2010
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.
War diese Rezension für Sie hilfreich?
11 von 11 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen How to manage your legacy classes 13. August 2009
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.
War diese Rezension für Sie hilfreich?
4 von 4 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Gut strukturiert und an der Praxis orientiert 28. Januar 2013
Format:Taschenbuch|Verifizierter Kauf
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!
War diese Rezension für Sie hilfreich?
3 von 3 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Interesting philosophy 20. November 2010
Von Hibbelig
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".
War diese Rezension für Sie hilfreich?
1 von 1 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen Kondensat eines reichen Erfahrungsschatzes 3. April 2014
Von rjMichel
Format:Taschenbuch|Verifizierter Kauf
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.
War diese Rezension für Sie hilfreich?
Möchten Sie weitere Rezensionen zu diesem Artikel anzeigen?
Waren diese Rezensionen hilfreich?   Wir wollen von Ihnen hören.

Kunden diskutieren

Das Forum zu diesem Produkt
Diskussion Antworten Jüngster Beitrag
Noch keine Diskussionen

Fragen stellen, Meinungen austauschen, Einblicke gewinnen
Neue Diskussion starten
Erster Beitrag:
Eingabe des Log-ins

Kundendiskussionen durchsuchen
Alle Amazon-Diskussionen durchsuchen

Ähnliche Artikel finden