$K(Literatur) Refactoring - Improve the Design of Existing Code $A(refactoring) $B(Literatur,refbuch1.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201485672/qid%3D1013096264/028-3667024-0316569) $B(Literatur,refbuch2.gif,none,http://www.amazon.de/exec/obidos/ASIN/3827316308/qid=1013096352/sr=1-1/ref=sr_1_0_1/028-3667024-0316569) Für mich das wichtigste OO-Buch der letzten Jahre. Das erste Kapitel bietet ein AHA-Erlebnis, über die Bedeutung von Refactoring. Es folgen Kapitel, wie automatische Tests mit Hilfe des JUnits-Frameworks, und eine Katalog von Refactoring-Prozeduren. Alle Beispiele sind in Java. Das Buch ist einfach zu lesen, und orientiert sich fast immer an kleinen und übersichtlichen Beispielen. Die deutsche Ausgabe habe ich nur mal durchgeblättert. Das Layout ist schlechter, zur Übersetzung kann ich nicht sagen. Das Englisch in der Original Ausgabe ist aber so einfach, daß sich die deutsche Ausgabe nur den absolut Englisch-Verweigerer lohnt. Das objektorientierte Konstruktionshandbuch $A(oo-konstruktion) $B(Literatur,ookonstr.gif,none,http://www.amazon.de/exec/obidos/ASIN/3932588053/qid=1013097020/sr=8-1/ref=sr_aps_prod_1_1/028-3667024-0316569) Über dieses Buch freue und ärgere ich mich gleichzeitig. Es ist das einzigste mir bekannte Buch, das eine vollständige gut durchdachte Software-Architektur vorstellt, die ein Rahmen für jegliche OO-Projekte dient. Es wird der Werkzeug- u. Materialansatz vorgestellt, der schon in mehreren groesseren OO-Projekten erfolgreich angewandt worden. Ärgerlich ist, daß die Autoren es nicht verstanden haben, den Inhalt einfacher und verständlicher zu übermitteln. Trotz der Dicke (fast 700 Seiten) ist der Stoff zu knapp beschrieben. Entwurfsmuster $A(entwurfsmuster) $B(Literatur,entwmuen.gif,none,http://www.amazon.de/exec/obidos/ASIN/3827318629/qid=1013097137/sr=2-1/ref=sr_2_1_1/028-3667024-0316569) $B(Literatur,entwmude.gif,none,http://www.amazon.de/exec/obidos/ASIN/0471606952/qid=1030700554/sr=1-2/ref=sr_1_2_2/028-4547085-2714117) Es ist das Standard-Buch über Patterns, auf das sich jedes Pattern-Buch bezieht. Ich hatte als ich das Buch vor 4 Jahren gekauft hatte, doch grosse Verständnis Schwierigkeiten. Hilfreich waren oft Artikel von Zeitschriften, die einzelne diese Patterns näher betrachteten. Die Beispiele sind in C++. The Design Patterns Smalltalk Companion $B(Literatur,smapatt.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201184621/qid=1013097195/sr=1-1/ref=sr_1_16_1/028-3667024-0316569) Erklärt die obigen Entwurfsmuster anhand Smalltalk Beispielen. Sehr viel einfacher zu verstehen. Smalltalk Best Practice Patterns $A(bestPatterns) $B(Literatur,bstpattr.gif,none,http://www.amazon.de/exec/obidos/ASIN/013476904X/qid%3D1013097246/028-3667024-0316569) Das Standard-Werk von Kent Beck mit einer Ansammlung von Smalltalk-Idioms. Viele Refaktorierungen haben von diesem Buch ihren Ursprung. Viele dieser Smalltalk-Idioms sind auf Java uebertragbar. Für Smalltalker sollte dieses Buch eine Pflichtlektüre sein. Patternorientierte Systemarchitektur $A(systemPattern) $B(Literatur,patterne.gif,none,http://www.amazon.de/exec/obidos/ASIN/3827312825/qid=1013098718/sr=1-1/ref=sr_1_16_1/028-3667024-0316569) $B(Literatur,patterns.gif,none,http://www.amazon.de/exec/obidos/ASIN/0471958697/qid=1013097505/sr=1-2/ref=sr_1_0_2/028-3667024-0316569) Eine ideale Ergänzung zu den Entwurfsmuster, da sich diese Bücher nur gering überschneiden. Sehr viel verständlicher und einfacher zu lesen als das Entwurfsmuster Buch Pattern Languages of Program Design Band 1 - 4 $A(plop) $B(Literatur,plop1.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201607344/qid=1013097573/sr=2-2/ref=sr_sp_bow/028-3667024-0316569) $B(Literatur,plop2.gif,none,http://www.amazon.com/exec/obidos/ASIN/0201895277/ref=pd_sim_books/104-5955071-6444731) $B(Literatur,plop3.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201310112/qid=1013097573/sr=2-3/ref=sr_sp_bow/028-3667024-0316569) $B(Literatur,plop4.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201433044/qid=1013097573/sr=2-1/ref=sr_sp_bow/028-3667024-0316569) Interessante Sammlung von Patterns aus der regelmaessig stattfindeten PLOP-Konferenzen. Viele Patterns sind sehr speziell aber einige Beiträge sind wahre Juwelen. The Pragmatic Programmer $A(PragmaticProgrammer) $B(Literatur,pragprog.gif,none,http://www.amazon.de/exec/obidos/ASIN/020161622X/qid=1013098164/sr=8-1/ref=sr_aps_prod_1_1/028-3667024-0316569) Sehr lesenswertes und leicht geschriebenes Buch. Viele Richtlinien und Tips die ein guter und pragmatischer Programmierer befolgen sollte, um kostengünstig fehlerfreie Software zu entwickeln. Patterns kompakt $A(Patterns kompakt) $B(Literatur,patternskompakt.jpg,none,http://www.amazon.de/exec/obidos/ASIN/3827414431/ref=pd_sr_ec_ir_aps/028-5526049-4804557) Klein, fein, preiswert. Gibt eine sehr gute und übersichtliche Zusammenfassung der wichtigsten Patterns. Ideal zum Nachschlagen neben dem Schreibtisch. Domain Driven Design $A(Domain Driven Design) $B(Literatur,domaindrivendesign.jpg,none,http://www.amazon.de/exec/obidos/ASIN/0321125215/qid%3D1082964149/028-5526049-4804557) Sicherlich eines der wichtigsten Bücher des Jahres 2003. Das (Geschäfts-) Objekt Modell sollte mit dem fachlichen Modell übereinstimmen, so daß Fachexperten und IT-Experten diesselbe Sprache benutzen. Diese Buch zeigt Techniken und Patterns dieses zu erreichen. Patterns für Enterprise Architekturen $A(PatternsEnterpriseArchitekuren) $B(Literatur,patternsenterprise.jpg,none,http://www.amazon.de/exec/obidos/ASIN/3826613783/qid=1082964316/sr=2-1/ref=sr_2_11_1/028-5526049-4804557) Sammlung wichtiger Patterns die sich u.a. mit Verteilung, Datenbank Mapping, Web Repräsentationen beschäftigen. Sehr empfehlenswert, wie alles was von Martin Fowler kommt. Extreme Programming Serie $A(ExtremeProgrammingSerie) $B(Literatur,extrprg1.gif,none,http://www.amazon.de/exec/obidos/ASIN/3827317096/qid=1013098370/sr=1-1/ref=sr_1_0_1/028-3667024-0316569) $B(Literatur,extrprg2.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201616416/qid=1013098436/sr=1-2/ref=sr_1_1_2/028-3667024-0316569) $B(Literatur,extrprgr3.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201710919/qid=1013098436/sr=1-4/ref=sr_1_1_4/028-3667024-0316569) $B(Literatur,extrprgr4.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201708426/ref=pd_sim_books_dp/028-3667024-0316569) Extreme Programming ist eine leichtgewichtige Methodik zur Softwareerstellung. XP stellt u.a. höchste Anforderungen an die interne Softwarequalität. Dazu gehört andauerndes Refactoring, und automatisierte Tests. Mastering the requirements process $B(Literatur,require.gif,none,http://www.amazon.de/exec/obidos/ASIN/0201360462/qid=1013098576/sr=2-1/ref=sr_2_1_1/028-3667024-0316569) $A(MasteringRequirements) Suzanne Robertson und James Robertson Das Ehepaar Robertson ist im Gebiet Anforderungsanalyse sicherlich führend. Ich bin von ihrem Buch begeistert. Anforderungen werden auf Karteikärtchen geschrieben und durch einen Qualitätscheck unterworfen. Jede Anforderung muss messbare Akzeptanzkriterien beinhalten. Weiterhin wird ein Template gebeben,in denen Basis sich die Anforderungsdokumente eingliedern. Ich empfehle dieses Buch allen die mit Anforderungsanalyse zu tun haben.