Kotlin, Compose и промты: как в одиночку закрыть Android-проект в срок

Почему один Android-разработчик снова может конкурировать с командой

Android-разработка исторически была командным видом спорта: отдельно UI, отдельно данные, отдельно навигация и DI. С приходом Jetpack Compose декларативный UI на Kotlin сократил объём кода для экранов, а Kotlin Coroutines и Flow убрали большую часть ада колбэков. Но узкое место осталось — рутина: генерация однотипных экранов, настройка Room, парсинг JSON, написание тестов. Именно здесь LLM-ассистенты дают наибольший выигрыш.

По данным Google (Android Developers Blog, 2024–2025), Compose используется в большинстве новых проектов на Kotlin, а официальная документация developer.android.com рекомендует Coroutines как стандарт асинхронности. Проблема в том, что «просто попросить ИИ написать код» не работает: без структуры промта вы получаете устаревшие API, забытые зависимости и нерабочие импорты.

Ниже — подборка промтов, которую я собрал под реальный цикл разработки: от архитектуры до релиза. Каждый промт — готовый к копипасту, с пояснением задачи и примером. Важно: промт — это не замена инженерного мышления, а ускоритель. Код всегда проверяйте в IDE и на устройстве.

1. Каркас проекта и архитектура (MVVM + UDF)

Задача: получить структуру пакетов и слоёв без ручного проектирования.

Ты — senior Android-инженер. Спроектируй структуру модулей для приложения на Kotlin с Jetpack Compose.
Требования: MVVM, однонаправленный поток данных (UDF), слои data/domain/ui, DI через Hilt, навигация через Navigation Compose.
Выведи дерево пакетов и список Gradle-зависимостей с версиями (используй Version Catalog libs.versions.toml).
Для каждого слоя объясни зону ответственности одной строкой.

Пример результата: пакеты data/repository, data/local, domain/usecase, ui/screen/home. Такой промт экономит часы на «архитектурном» этапе и сразу задаёт единый стиль.

2. Экраны на Compose с состоянием

Задача: генерировать экраны, которые не «перерисовываются» зря.

Сгенерируй Composable-экран на Kotlin для списка задач.
Используй: LazyColumn, remember + mutableStateOf или collectAsStateWithLifecycle, стабильные data-классы.
Вынеси состояние в отдельный UI-класс State. Раздели на stateless-компонент и stateful-обёртку.
Покажи, где именно применяются remember и derivedStateOf, и объясни зачем.

Ключевой принцип Compose — разделение stateless и stateful. Промт заставляет модель соблюдать это, иначе вы получите монолитный Composable, который невозможно переиспользовать.

3. Coroutines и Flow без утечек

Задача: корректная асинхронность.

Напиши ViewModel на Kotlin с viewModelScope и StateFlow.
Загрузи данные из репозитория, обработай ошибки через sealed-класс Result (Success/Error/Loading).
Используй collectAsStateWithLifecycle во View, а не collectAsState.
Покажи, как отменить задачу и почему Dispatchers.IO нужен для сетевых вызовов.

Официальный гайд developer.android.com/develop/ui/compose/state-consumption прямо рекомендует collectAsStateWithLifecycle для учёта жизненного цикла. Промт фиксирует это требование.

4. Room: сущности, DAO и миграции

Задача: локальное хранилище без ошибок схемы.

Создай Room-базу для заметок: Entity, DAO, Database.
Используй Flow<List<Note>> в DAO, suspend-функции для вставки/удаления.
Добавь миграцию с версии 1 на 2 (добавление поля createdAt) с корректным Migration.
Покажи все аннотации и объясни, зачем нужен @TypeConverters для дат.

Частая ошибка новичков — забыть @TypeConverters для LocalDateTime. Промт явно просит это учесть.

5. Сетевой слой: Retrofit + Kotlinx Serialization

Задача: типизированный API-клиент.

Настрой Retrofit 2 с Kotlinx Serialization для Android на Kotlin.
Создай data-классы с @Serializable, интерфейс API с suspend-функциями, OkHttp-интерцептор для авторизации.
Обработай HTTP-ошибки через Result. Покажи Gradle-зависимости и плагин kotlin-serialization.

Этот промт закрывает целый слой за один запрос, но обязательно проверьте версии плагинов в build.gradle.kts.

6. Навигация в Navigation Compose

Задача: типобезопасные маршруты.

Настрой Navigation Compose с типобезопасными маршрутами через @Serializable data object/классы.
Покажи NavHost, переходы с аргументами и обработку back stack.
Сравни строковые маршруты и типобезопасные, объясни, что рекомендуют сейчас.

Типобезопасная навигация появилась в Navigation 2.8+ и описана в официальной документации. Промт заставляет модель использовать актуальный подход, а не устаревшие строки.

7. Дизайн-система и Material 3

Задача: единый стиль без дизайнера.

Создай тему Material 3 для Compose: ColorScheme, Typography, Shape.
Поддержи светлую и тёмную темы через isSystemInDarkTheme().
Покажи, как применить тему в Activity и как вынести кастомные цвета в отдельный объект.

Material 3 — актуальная дизайн-система Google. Промт избавляет от хардкода цветов по всему проекту.

8. Тесты: unit и Compose UI

Задача: покрыть критичное без ручного бойлерплейта.

Напиши unit-тест для ViewModel с корутинами на JUnit + kotlinx-coroutines-test.
Используй runTest и TestDispatcher.
Дополнительно напиши Compose UI-тест с createComposeRule для проверки отображения списка.

Тестирование корутин без runTest — источник «мигающих» тестов. Промт задаёт правильный инструмент.

9. Оптимизация производительности Compose

Задача: убрать лишние рекомпозиции.

Проверь этот Composable на лишние рекомпозиции и предложи оптимизации.
Используй: стабильные типы, remember, key в LazyColumn, derivedStateOf.
Объясни, как работает skipping в Compose и почему нестабильные параметры ломают его.

Прикрепите к промту свой код — получите конкретный разбор, а не общие советы.

10. Ревью кода и поиск утечек памяти

Задача: поймать ошибки до релиза.

Проведи code review Kotlin-файла.
Ищи: утечки контекста, неотменённые корутины, nullable-ошибки, блокирующие вызовы в main thread.
Для каждой проблемы дай строку, объяснение и исправленный вариант.

Такой промт полезен как второй проход перед PR, особенно в solo-проекте, где нет коллеги-ревьюера.

11. Gradle и сборка

Задача: не тонуть в конфигурации.

Помоги настроить build.gradle.kts (Kotlin DSL) с Version Catalog.
Добавь buildTypes debug/release, signingConfig, minifyEnabled и ProGuard-правила для Retrofit и Room.
Объясни каждую строку release-конфигурации.

ProGuard-правила для Retrofit/Room — классическая точка падения релизной сборки. Промт заставляет их не забыть.

12. Отладка: чтение stacktrace

Задача: быстрее находить причину.

Объясни этот stacktrace Android-приложения на Kotlin.
Определи корневую причину, а не симптом. Предложи минимальное исправление и как воспроизвести баг.

Вставьте лог — получите разбор. Это быстрее, чем гуглить каждое исключение по отдельности.

13. Локализация и доступность

Задача: приложение для всех.

Вынеси все строки в strings.xml, добавь поддержку ru/en.
Проверь Compose-экран на доступность: contentDescription, семантику, размеры тач-таргетов.
Покажи, как тестировать через Accessibility Scanner.

Доступность (accessibility) часто игнорируется в solo-проектах, но влияет и на ревью в Google Play, и на реальных пользователей.

14. Публикация и версионирование

Задача: довести до релиза.

Составь чек-лист релиза Android-приложения в Google Play.
Включи: versionCode/versionName, подпись, App Bundle, приватность, скриншоты, staged rollout.
Объясни разницу между AAB и APK.

Google Play с 2021 года требует App Bundle для новых приложений — промт помогает не пропустить обязательные шаги.

Что в итоге

Промты не пишут приложение за вас, но снимают с одного разработчика значительную часть механической работы: настройку слоёв, бойлерплейт, конфигурацию. Главное правило — давать модели контекст (версии, требования, ваш код) и всегда проверять результат в IDE и на устройстве. Начните с промтов №1 и №3: каркас и корректная асинхронность дают наибольший эффект на старте, а дальше подключайте остальные по мере движения по проекту.

← Все статьи

Комментарии

Читайте также

Курс AI-автоматизация бизнеса: как внедрить агентов без команды разработки на Asibiont

22 июня 2026

HC-SR04 и ASI Biont: шпаргалка по интеграции ультразвукового дальномера в IoT без кода

11 июля 2026

Cambridge Lower Secondary English (0861): программа Stages 7–9, навыки и перспективы | Asibiont

7 августа 2026

SEO на автопилоте: как я ускорил продвижение в 10 раз с помощью AI-промтов и Python

5 сентября 2026

Освоение безопасности ИИ: Почему курс по безопасности ИИ на asibiont.com — ваш план защиты LLM

22 июня 2026

Jetson Nano и Orin: AI-агент ASI Biont для компьютерного зрения без кода

17 июля 2026

От разработки к продукту: что нужно, чтобы стать автором маркетплейса Инфостарт

14 июля 2026

Интеграция ИИ с Sentry: как ASI Biont автоматизирует триаж ошибок и реагирование на инциденты

9 августа 2026

Как подключить Salesforce Commerce Cloud к AI-агенту ASI Biont: автоматизация заказов, рекомендаций и аналитики без программирования

27 июля 2026