Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen Code Deutsche Ausgabe
:
Robert C. Martin
:
Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen Code Deutsche Ausgabe
:
MITP Verlags GmbH& Co. KG
:
9783826696398
:
mitp Professional
:
1
:
CHF 36.20
:
:
Programmiersprachen
:
German
:
480
:
kein Kopierschutz/DRM
:
PC/MAC/eReader/Tablet
:
PDF/ePUB
h2>Kommentare, Formatierung, StrukturierungFehler-Handling und Unit-TestsZahlreiche Fallstudien, Best Practices, Heuristiken und Code Smells Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen CodeAus dem Inhalt:Lernen Sie, guten Code von schlechtem zu unterscheidenSauberen Code schreiben und schlechten Code in guten umwandelnAussagekräftige Namen sowie gute Funktionen, Objekte und Klassen erstellenCode so formatieren, strukturieren und kommentieren, dass er bestmöglich lesbar istEin vollständiges Fehler-Handling implementieren, ohne die Logik des Codes zu verschleiernUnit-Tests schreiben und Ihren Code testgesteuert entwickeln Selbst schlechter Code kann funktionieren. Aber wenn der Code nicht sauber ist, kann er ein Entwicklungsunternehmen in die Knie zwingen. Jedes Jahr gehen unzählige Stunden und beträchtliche Ressourcen verloren, weil Code schlecht geschrieben ist. Aber das muss nicht sein. Mit Clean Code präsentiert Ihnen der bekannte Software-Experte Robert C. Martin ein revolutionäres Paradigma, mit dem er Ihnen aufzeigt, wie Sie guten Code schreiben und schlechten Code überarbeiten. Zusammen mit seinen Kollegen von Object Mentor destilliert er die besten Praktiken der agilen Entwicklung von sauberem Code zu einem einzigartigen Buch. So können Sie sich die Erfahrungswerte der Meister der Software-Entwicklung aneignen, die aus Ihnen einen besseren Programmierer machen werden - anhand konkreter Fallstudien, die im Buch detailliert durchgearbeitet werden. Sie werden in diesem Buch sehr viel Code lesen. Und Sie werden aufgefordert, darüber nachzudenken, was an diesem Code richtig und falsch ist. Noch wichtiger: Sie werden herausgefordert, Ihre professionellen Werte und Ihre Einstellung zu Ihrem Beruf zu überprüfen. Clean Code besteht aus drei Teilen:Der erste Teil beschreibt die Prinzipien, Patterns und Techniken, die zum Schreiben von sauberem Code benötigt werden. Der zweite Teil besteht aus mehreren, zunehmend komplexeren Fallstudien. An jeder Fallstudie wird aufgezeigt, wie Code gesäubert wird - wie eine mit Problemen behaftete Code-Basis in eine solide und effiziente Form umgewandelt wird. Der dritte Teil enthält den Ertrag und den Lohn der praktischen Arbeit: ein umfangreiches Kapitel mit Best Practices, Heuristiken und Code Smells, die bei der Erstellung der Fallstudien zusammengetragen wurden. Das Ergebnis ist eine Wissensbasis, die beschreibt, wie wir denken, wenn wir Code schreiben, lesen und säubern. Dieses Buch ist ein Muss für alle Entwickler, Software-Ingenieure, Projektmanager, Team-Leiter oder Systemanalytiker, die daran interessiert sind, besseren Code zu produzieren. Über den Autor:Robert C. »Uncle Bob« Martin entwickelt seit 1970 professionell Software. Seit 1990 arbeitet er international als Software-Berater. Er ist Gründer und Vorsitzender von Object Mentor, Inc., einem Team erfahrener Berater, die Kunden auf der ganzen Welt bei der Programmierung in und mit C++, Java, C#, Ruby, OO, Design Patterns, UML sowie Agilen Methoden und eXtreme Programming helfen.
Robert C. »Uncle Bob« Martin entwickelt seit 1970 professionell Software. Seit 1990 arbeitet er international als Software-Berater. Er ist Gründer und Vorsitzender von Object Mentor, Inc., einem Team erfahrener Berater, die Kunden auf der ganzen Welt bei der Programmierung in und mit C++, Java, C#, Ruby, OO, Design Patterns, UML sowie Agilen Methoden und eXtreme Programming helfen.
Vorwort
Cover
1
Titel
3
Impressum
4
Inhaltsverzeichnis
5
Vorwort
15
Einführung
21
Kapitel 1: Sauberer Code
25
1.1 Code, Code und nochmals Code
26
1.2 Schlechter Code
27
1.3 Die Lebenszykluskosten eines Chaos
28
1.4 Denkschulen
40
1.5 Wir sind Autoren
41
1.6 Die Pfadfinder-Regel
43
1.7 Vorläufer und Prinzipien
43
1.8 Zusammenfassung
43
Kapitel 2: Aussagekräftige Namen
45
2.1 Einführung
45
2.2 Zweckbeschreibende Namen wählen
45
2.3 Fehlinformationen vermeiden
47
2.4 Unterschiede deutlich machen
49
2.5 Aussprechbare Namen verwenden
50
2.6 Suchbare Namen verwenden
51
2.7 Codierungen vermeiden
52
2.8 Mentale Mappings vermeiden
54
2.9 Klassennamen
55
2.10 Methodennamen
55
2.11 Vermeiden Sie humorige Namen
55
2.12 Wählen Sie ein Wort pro Konzept
56
2.13 Keine Wortspiele
56
2.14 Namen der Lösungsdomäne verwenden
57
2.15 Namen der Problemdomäne verwenden
57
2.16 Bedeutungsvollen Kontext hinzufügen
57
2.17 Keinen überflüssigen Kontext hinzufügen
60
2.18 Abschließende Worte
60
Kapitel 3: Funktionen
61
3.1 Klein!
64
3.2 Eine Aufgabe erfüllen
65
3.3 Eine Abstraktionsebene pro Funktion
67
3.4 Switch-Anweisungen
68
3.5 Beschreibende Namen verwenden
70
3.6 Funktionsargumente
71
3.7 Nebeneffekte vermeiden
75
3.8 Anweisung und Abfrage trennen
77
3.9 Ausnahmen sind besser als Fehler-Codes
77
3.10 Don’t Repeat Yourself
80
3.11 Strukturierte Programmierung
80
3.12 Wie schreibt man solche Funktionen?
81
3.13 Zusammenfassung
81
3.14 SetupTeardownIncluder
82
Kapitel 4: Kommentare
85
4.1 Kommentare sind kein Ersatz für schlechten Code
86
4.2 Erklären Sie im und durch den Code
87
4.3 Gute Kommentare
87
4.4 Schlechte Kommentare
92
Kapitel 5: Formatierung
109
5.1 Der Zweck der Formatierung
109
5.2 Vertikale Formatierung
110
5.3 Horizontale Formatierung
119
5.4 Team-Regeln
125
5.5 Uncle Bobs Formatierungsregeln
125
Kapitel 6: Objekte und Datenstrukturen
129
6.1 Datenabstraktion
129
6.2 Daten/Objekt-Anti-Symmetrie
131
6.3 Das Law of Demeter
133
6.4 Datentransfer-Objekte
136
6.5 Zusammenfassung
138
Kapitel 7: Fehler-Handling
139
7.1 Ausnahmen statt Rückgabe-Codes
139
7.2 Try-Catch-Finally-Anweisungen zuerst schreiben
141
7.3 Unchecked Exceptions
143
7.4 Ausnahmen mit Kontext auslösen
144
7.5 Definieren Sie Exception-Klassen mit Blick auf die Anforderungen des Aufrufers
144
7.6 Den normalen Ablauf definieren
146
7.7 Keine Null zurückgeben
147
7.8 Keine Null übergeben
148
7.9 Zusammenfassung
150
Kapitel 8: Grenzen
151
8.1 Mit Drittanbieter-Code arbeiten
151
8.2 Grenzen erforschen und kennen lernen
154
8.3 log4j kennen lernen
154
8.4 Lern-Tests sind besser als kostenlos
156
8.5 Code verwenden, der noch nicht existiert
157
8.6 Saubere Grenzen
158
Kapitel 9: Unit-Tests
159
9.1 Die drei Gesetze der TDD
160
9.2 Tests sauber halten
161
9.3 Saubere Tests
163
9.4 Ein assert pro Test
168
9.5 F.I.R.S.T.
171
9.6 Zusammenfassung
172
Kapitel 10: Klassen
173
10.1 Klassenaufbau
173
10.2 Klassen sollten klein sein!
174
10.3 Änderungen einplan