Конкурентность в Kotlin: от основ до продвинутых паттернов — Алексей Воронов — обложка книги
300 страниц
Kotlin
PDF
4.5

Конкурентность в Kotlin: от основ до продвинутых паттернов

Практическое руководство по асинхронному и многопоточному программированию

Автор:

Год:

Краткое содержимое:

Книга «Конкурентность в Kotlin: от основ до продвинутых паттернов» — это исчерпывающее руководство по созданию быстрых, отзывчивых и масштабируемых приложений на языке Kotlin. Если вы пишете на Kotlin для Android, серверной части (Ktor, Spring WebFlux) или десктопа, эта книга поможет вам разобраться с асинхронностью и многопоточностью на глубоком уровне.

О чём эта книга?

Книга охватывает полный путь от базовых концепций до сложных сценариев конкурентного программирования. Вы узнаете:

  • Основы конкурентности — чем потоки отличаются от корутин, как работает планировщик (Dispatcher) и почему корутины легче потоков.
  • Kotlin Coroutines — запуск, отмена, структурированная конкурентность, Scopes, Job и Deferred.
  • Потокобезопасность — атомарные переменные, Mutex, Semaphore, ThreadLocal и работа с общим состоянием.
  • Каналы (Channels) — Producer-Consumer, fan-out, fan-in, ticker-каналы для потоковой передачи данных.
  • Flow и Reactive Streams — холодные и горячие потоки, backpressure, операторы трансформации, StateFlow и SharedFlow.
  • Продвинутые паттерны — Actor Model, Supervisor, CoroutineExceptionHandler, параллельная обработка с mapAsync и flatMapMerge.
  • Тестирование конкурентного кода — runTest, TestDispatcher, mock-корутины и отладка гонок данных.

Для кого эта книга?

  • Разработчиков на Kotlin (Android, Backend, Multiplatform), которые хотят писать асинхронный код без блокировок.
  • Джуниоров и мидлов, желающих систематизировать знания о корутинах и многопоточности.
  • Программистов, переходящих с Java (CompletableFuture, Thread) на современный Kotlin.
  • Всех, кто хочет избежать race condition, deadlock и утечек памяти в конкурентных приложениях.

Что вы узнаете?

  • Как правильно запускать и отменять корутины, не допуская утечек.
  • Как выбирать между Dispatchers.Default, IO, Main и Unconfined.
  • Как строить реактивные цепочки с Flow и обрабатывать ошибки в потоках.
  • Как тестировать асинхронный код с помощью виртуального времени.
  • Как писать высоконагруженные серверы и Android-приложения без лагов.

Книга содержит десятки практических примеров, готовых к использованию в реальных проектах. После её прочтения вы сможете уверенно проектировать конкурентные архитектуры и оптимизировать производительность вашего кода.

Примечание: Книга рассчитана на читателей, уже знакомых с синтаксисом Kotlin. Если вы только начинаете изучать язык, рекомендуется сначала освоить базовый курс.

Рекомендаций