Kotlin-Konkurrenztechniken
Практическое руководство по многопоточности и асинхронности
Zusammenfassung:
Einleitung
Das Buch «Concurrency Techniques in Kotlin» von A. Foster, erschienen im Jahr 2021, ist ein umfassender Leitfaden zur Arbeit mit Concurrency in der Sprache Kotlin. Im Zeitalter von Multi-Core-Prozessoren und leistungsintensiven Anwendungen wird die Fähigkeit, parallele Berechnungen effektiv zu verwalten, immer wichtiger. Der Autor führt den Leser konsequent von grundlegenden Konzepten zu fortgeschrittenen Techniken und nutzt dabei moderne Kotlin-Funktionen wie Coroutinen, Threads und Channels.
Worum geht es in dem Buch
Das Buch deckt alle wesentlichen Aspekte der Concurrent-Programmierung in Kotlin ab. Der erste Teil widmet sich den Grundlagen: Unterschiede zwischen Parallelität und Concurrency, Speichermodelle, Probleme mit Data Races und Locks. Anschließend geht der Autor zu praktischen Werkzeugen über – von traditionellen Java-Threads bis hin zu nativen Kotlin-Coroutinen. Besonderes Augenmerk liegt auf der Bibliothek kotlinx.coroutines, ihren Dispatchern, Coroutine Scopes und strukturierter Concurrency. Die zweite Hälfte des Buches behandelt fortgeschrittene Themen: Channels für den Datenaustausch zwischen Coroutinen, Flow für reaktive Streams, das Testen von Concurrent-Code und die Integration mit Android-Frameworks.
Für wen ist dieses Buch geeignet
Das Buch richtet sich an Entwickler, die bereits mit den Grundlagen von Kotlin vertraut sind und ihr Wissen im Bereich Multithreading vertiefen möchten. Es ist nützlich für:
- Android-Entwickler, die reaktionsschnelle und schnelle Anwendungen schreiben möchten;
- Backend-Entwickler, die hochperformante und skalierbare Systeme mit Kotlin erstellen;
- Alle, die die Mechanismen hinter Coroutinen, Threads und Channels verstehen und effizient einsetzen wollen.
Empfehlungen
Swift (iOS/macOS) und Microservices: Von der mobilen App zur Cloud-Architektur
Leistung von Go (Golang)-Anwendungen: Code- und Systemoptimierung
GraphQL in PHP: Moderne APIs erstellen
Webentwicklung mit Go (Golang): Von den Grundlagen bis zum Deployment
Testen von Kotlin-Anwendungen: Von Unit-Tests bis E2E
PHP und Kubernetes: Orchestrierung und Deployment moderner Anwendungen