Об авторах 11
Предисловие 13
ГЛАВА 1. Основы языка Kotlin 19
ГЛАВА 2. Фреймворк коллекций Kotlin 45
ГЛАВА 3. Основы Android 67
ГЛАВА 4. Параллельное программирование в Android 94
ГЛАВА 5. Потокобезопасность 113
ГЛАВА 6. Организация параллелизма с использованием обратных вызовов 127
ГЛАВА 7. Сопрограммы 141
ГЛАВА 8. Структурированный параллелизм и сопрограммы 166
ГЛАВА 9. Каналы 209
ГЛАВА 10. Потоки 241
ГЛАВА 11. Вопросы производительности и инструменты профилирования Android 280
ГЛАВА 12. Снижение потребления ресурсов за счет оптимизации производительности 314
Предметный указатель 333
Книга посвящена разработке мобильных приложений для Android на языке Kotlin. Рассмотрены основные структуры и элементы языка, подробно описан фреймворк коллекций Kotlin. Показана архитектура операционной системы Android, приложений и их контейнеров, изучаются основы параллельного программирования. Рассказано о потокобезопасности, работе с параллелизмом с использованием обратных вызовов. Отдельная глава посвящена специальным конструкциям Kotlin — сопрограммам, с акцентом на структурированный параллелизм. Рассматриваются каналы, использование потоков для асинхронной обработки данных. Изучаются вопросы повышения производительности приложений с использованием инструментов профилирования Android и снижения потребления ресурсов за счет оптимизации производительности.
Для программистов
Разработка мобильных приложений для Android может показаться сложной задачей, особенно если для этого требуется изучить новый язык программирования. Речь идет о Kotlin, ставшем официальным языком разработки для этой операционной системы. Книга поможет быстро освоить этот язык, обладающий целым рядом технологических преимуществ, а также перейти с Java на Kotlin.
Авторы приводят реализацию наиболее распространенных задач в нативной разработке для Android и показывают, как Kotlin помогает решить проблему параллелизма. Делая акцент на структурированном параллелизме, новой парадигме асинхронного программирования, книга помогает освоить одну из самых мощных конструкций Kotlin — сопрограммы.
Познакомьтесь с основами Kotlin и его фреймворком коллекций
Изучите операционную систему Android, контейнер приложения и его компоненты
Познакомьтесь с потокобезопасностью и узнайте, как работать с параллелизмом
Пишите последовательный асинхронный код с низкими затратами
Изучите структурированный параллелизм с помощью сопрограмм и узнайте, как сопрограммы взаимодействуют между собой с помощью каналов
Узнайте, как использовать потоки для асинхронной обработки данных
Изучите вопросы производительности с помощью инструментов профилирования
Оптимизируйте производительность, чтобы сократить потребление ресурсов