Allgemeine Beschreibung
Das Buch umfasst 350 Seiten. Neben dem Text enthalten die Kapitel Codeabschnitte und Bilder, die dort helfen, wo reine Wortlichkeit unzureichend wäre. Am Ende jedes Kapitels finden Sie eine Zusammenfassung des Materials, Lernaufgaben und praktische Übungen. Einige Teile des Inhalts erschienen mir recht komplex.
Einführung
Ohne die Einleitungs- und Abschlusskapitel besteht das Werk aus 7 Kapiteln, die jeweils in 3 Themen unterteilt sind. Jedes Thema vertieft und ergänzt das vorherige. Die einzelnen Kapitel bringen gewöhnlich völlig neue und von den Vorchapiteln unabhängige Technologien vor.
Kapitel 2 – Ausführungsflüsse und Sperren
- Tag 1: gegenseitiger Ausschluss und Speichermodelle
- Tag 2: über Standardsperren hinaus
- Tag 3: auf den Schultern der Giganten
Kapitel 3 – Funktionsorientierte Programmierung
- Tag 1: Programmieren ohne veränderlichen Zustand
- Tag 2: funktionaler Parallelismus
- Tag 3: funktionale Konkurrenz
Kapitel 4 – Der Clojure‑Weg – Trennung von Identität und Zustand
- Tag 1: Atome und persistente Datenstrukturen
- Tag 2: Agenten und transaktionale Software‑Speicherei
- Tag 3: tiefer eintauchen
Kapitel 5 – Akteure
- Tag 1: Nachrichten und Postfächer
- Tag 2: Fehlerbehandlung und Fehlertoleranz
- Tag 3: verteilte Anwendungen
Kapitel 6 – Koordination sequenzieller Prozesse
- Tag 1: Kanäle und do‑Blöcke
- Tag 2: mehrere Kanäle und I/O
- Tag 3: CSP‑Modell auf Client‑Seite
Kapitel 7 – Datenparallelismus
- Tag 1: GPGPU‑Programmierung
- Tag 2: Dimensionalität und Arbeitsgruppen
- Tag 3: OpenCL und OpenGL – Daten im GPU speichern
Kapitel 8 – Lambda‑Architektur
- Tag 1: MapReduce
- Tag 2: Batch‑Schicht
- Tag 3: Beschleunigungsschicht
Meinung
Das Buch war für eine sorgsameres Lesen gedacht, aber ich ging es wie jedes andere Werk an. Ich habe keine praktischen Aufgaben ausgeführt und zusätzliches Material nicht studiert, sodass einige Themen besonders schwierig erschienen. Zudem fokussiert die Arbeit auf sehr spezifische Sprachen und Technologien – Clojure und Erlang –, die dem durchschnittlichen Entwickler nicht vertraut sind. Seien Sie daher beim Lesen auf Herausforderungen gefasst. Insgesamt liefert das Buch reichlich Information und regt zum Nachdenken an.