Лучшая книга, которая научит вас, как обмениваться кодом между платформами, используя мультиплатформенность Kotlin (Kotlin Multiplatform — KMP). Вы получите основы создания пользовательских интерфейсов с использованием собственных наборов инструментов пользовательского интерфейса, а затем напишете общий код для сериализации (serialization), создания сетей (networking) и сохранения (persistence).
Вы также узнаете, как внедрение зависимостей, тестирование и различные архитектуры вписываются в мультиплатформенность Kotlin, чтобы создавать поддерживаемые и масштабируемые приложения, создавая собственные приложения быстрее и надежнее, предоставляя общий доступ к коду для Android, iOS и настольных компьютеров.
Для кого этот учебник?
Курс предназначен для мобильных разработчиков и менеджеров, которые хотят изучить, как они могут использовать Kotlin Multiplatform в различных вариантах использования для совместного использования кода в приложениях для Android, iOS и настольных ПК. Если вы хотите сократить время разработки и тестирования, написав определенные части своих приложений только один раз, этот бесплатный учебник на русском языке поможет.
Охватываемые концепции
- Jetpack Compose Android
- Compose Multiplatform
- SwiftUI
- Тестирование
- Внедрение зависимостей с помощью Koin
- Сохранение с использованием SQLDelight
- Сериализация
- Ktor
- Параллелизм с использованием coroutines
Содержание учебного курса
Раздел I: Kotlin Multiplatform — KMP | Начальный уровень
Одним из основных преимуществ мультиплатформенности Kotlin является то, что вы можете совместно использовать код в собственных приложениях. Вы можете продолжить разработку слоя пользовательского интерфейса, используя собственные наборы инструментов пользовательского интерфейса, такие как Jetpack Compose для Android и SwiftUI для iOS.
В этом разделе вы узнаете, как добавить новый модуль Gradle для написания бизнес-логики только один раз. Вы также узнаете, как создавать собственный пользовательский интерфейс для приложений Android, iOS и для настольных компьютеров, используя общий модуль.
- KA0701 — Введение в Kotlin Multiplatform (KMP)
- KA0702 — Системы сборки для KMP (знакомство с Gradle)
- KA0703 — Разработка пользовательского интерфейса: Android Jetpack Compose
- KA0704 — Разработка пользовательского интерфейса: iOS SwiftUI
- KA0705 — Разработка пользовательского интерфейса: Compose Multiplatform (CM)
Раздел II: Kotlin Multiplatform — KMP | Промежуточный уровень
Для эффективного совместного использования кода в приложениях необходимо учитывать несколько факторов: доступ к API, зависящим от платформы, поддержка существующих методов разработки программного обеспечения и постоянство.
В этом разделе вы узнаете, как использовать функции Kotlin для доступа к API-интерфейсам, зависящим от платформы, в вашем общем модуле и как мультиплатформенность Kotlin вписывается в вашу текущую архитектуру. Вы также узнаете о внедрении зависимостей и о том, как вы можете использовать его для тестирования функций, присутствующих в ваших общих модулях. Наконец, вы узнаете, как использовать общую кодовую базу для обработки сохраняемости на разных платформах.
- KA0706 — Подключение к API платформы
- KA0707 — Архитектура приложений
- KA0708 — Тестирование
- KA0709 — Внедрение зависимостей
- KA0710 — Сохранение данных
Раздел III: Мультиплатформенность Kotlin: продвинутый
Сетевое взаимодействие имеет решающее значение для большинства современных приложений, и обычно оно включает в себя реализацию схожей логики с использованием разных фреймворков и языков. Под капотом он также включает в себя такие понятия, как сериализация и параллелизм. К счастью, в мультиплатформенной платформе Kotlin есть специальные библиотеки для каждого из них.
В этом разделе вы узнаете, как использовать сериализацию для декодирования данных JSON в объекты Kotlin. Затем вы узнаете, как использовать общую сетевую библиотеку, которая использует эту общую сериализацию для извлечения данных из Интернета. Чтобы повысить производительность сети, вы также узнаете о параллелизме в Kotlin с использованием сопрограмм и о рекомендациях для разных платформ. Наконец, вы узнаете, как извлечь существующую функцию в мультиплатформенную библиотеку Kotlin, а также о различных способах публикации этой библиотеки.
- KA0711 — Сериализация
- KA0712 — Создание сетей
- KA0713 — Параллелизм
- KA0714 — Создание вашей библиотеки KMP
- KA0715 — Kotlin: Учебное пособие для разработчиков Swift
- KA0716 — Отладка вашего общего кода из Xcode
- KA0717 — Совместное использование пользовательского интерфейса для создания между Android и настольными компьютерами