Book description
- Basiert auf jahrelanger Tätigkeit als Softwareentwickler- Vermeiden von Fallstricken und Vermittlung von Best-Practices bei der Programmierung- Fundierter Überblick über Profithemen, die man sonst nicht in Java-Büchern findet.
Table of contents
- Cover
- Titel
- Impressum
- Inhaltsverzeichnis
- Vorwort
- 1 Einleitung zum Gesamtbuch
-
Teil I Fallstricke und Lösungen im Praxisalltag
-
2 Programmierstil und Coding Conventions
- 2.1 Grundregeln eines guten Programmierstils
- 2.2 Die Psychologie beim Sourcecode-Layout
-
2.3 Coding Conventions
- 2.3.1 Grundlegende Namens- und Formatierungsregeln
- 2.3.2 Namensgebung
- 2.3.3 Dokumentation
-
2.3.4 Programmdesign
- Halte den Sourcecode sauber
- Vermeide Seiteneffekte
- Vermeide übermäßige Debug- und Log-Ausgaben
- Vermeide Ausgaben per System.out
- Verwende final
- Vermeide Magic Numbers und Strings
- Hilf dem Garbage Collector
- Überprüfe Eingabeparameter auf Gültigkeit
- Verwende Assertions oder Exceptions zur Zusicherung für Pre- und Post-Conditions
- Prüfe Rückgabewerte und behandle Fehlersituationen
- Bevorzuge wenige return-Anweisungen
- Vermeide die sorglose Rückgabe von null
- Prüfe Referenzen auf null
- Behandle auftretende Exceptions wenn möglich
- Vermeide catch (Exception ex) und catch (Throwable th)
- Vermeide return in catch/finally-Blöcken
-
2.3.5 Klassendesign
- Bevorzuge lokale Variablen gegenüber Attributen
- Vermeide statische Attribute
- Greife auf Attribute bevorzugt über Methoden zu
- Vermeide feingranulare Änderungen am Objektzustand
- Liefere keine Referenzen auf interne Datenstrukturen zurück
- Minimiere Zustandsänderungen
- Programmiere gegen Interfaces oder abstrakte Klassen
- Verstecke Implementierungsdetails
- Sorge für Lesbarkeit und die richtige Abstraktionsebene
- Halte das Interface übersichtlich
- Vermeide zu viele Referenzen auf andere Klassen
- Beachte die maximale Methodenlänge von ca. 30 – 50 Zeilen
- Beachte die maximale Klassenlänge von ca. 500 – 1000 Zeilen
- 2.3.6 Parameterlisten
- 2.3.7 Logik und Kontrollfluss
- 2.4 Sourcecode-Überprüfung mit Tools
-
3 Unit Tests
- 3.1 Überblick
-
3.2 Motivation für Unit Tests aus der Praxis
-
3.2.1 Unit Tests für Neuentwicklungen
- Auswertung von Statustelegrammen
- Schritt 1: Korrekturen der Abhängigkeiten und Lesbarkeit
- Schritt 2: Erstellen erster Unit Tests
- Schritt 3: Unit Tests um Testfälle A bis F erweitern
- Schritt 4: Unit Tests um Testfälle für die Konvertierung 0 bis F erweitern
- Schritt 5: Testfälle für Eingabewertea bisf
- Schritt 6: Implementierung erweitern um Konvertierunga bisf
- Fazit
-
3.2.2 Unit Tests und Legacy-Code
- Vorarbeiten: Analyse
- Schritt 1: Schreiben von ersten Unit Tests
- Schritt 2: Herausfaktorieren einer durch Unit Tests prüfbaren Methode
- Schritt 3: Anpassungen für bessere Wart- und Lesbarkeit
- Schritt 4: Fehlersuche und -korrektur durch Log-Auswertung
- Schritt 5: Komplettierung der Unit Tests
- Fazit: Positive Effekte beim Einsatz von Unit Tests
-
3.2.1 Unit Tests für Neuentwicklungen
- 3.3 Fortgeschrittene Unit-Test-Techniken
- 3.4 Unit Tests mit Threads und Timing
- 3.5 Nützliche Tools für Unit Tests
- 3.6 Weiterführende Literatur
- 4 Codereviews
-
5 Optimierungen
- 5.1 Grundlagen
- 5.2 Einsatz geeigneter Datenstrukturen
- 5.3 Lazy Initialization
- 5.4 Optimierungen am Beispiel
- 5.5 I/O-bound-Optimierungen
- 5.6 Memory-bound-Optimierungen
- 5.7 CPU-bound-Optimierungen
- 5.8 Weiterführende Literatur
-
2 Programmierstil und Coding Conventions
- Teil II Anhang
- Fußnoten
Product information
- Title: Der Weg zum Java-Profi – Teil IV
- Author(s):
- Release date: January 2013
- Publisher(s): dpunkt
- ISBN: 97833864912467
You might also like
book
Der Weg zum Java-Profi, 4th Edition
Diese umfassende Einführung in die professionelle Java-Programmierung vermittelt Ihnen das notwendige Wissen, um stabile und erweiterbare …
book
Raus aus der Feature-Falle
Unternehmen geraten in die Feature-Falle, wenn sie sich stärker auf die Auslieferung und die Entwicklung von …
book
Visionäre der Programmierung - Die Sprachen und ihre Schöpfer
In Visionäre der Programmierung: Die Sprachen und ihre Schöpfer werden die Entwickler der bekanntesten Programmiersprachen der …
book
UX-Design überzeugend vermitteln
Wie gut Ihr Design auch sein mag: Ohne die Unterstützung von Nicht-Designerkollegen, Stakeholdern und Kunden werden …