DCdmitry-chernenko.meВсе проекты
ENRU
Главная/projects/vk-android
ИЗБРАННОЕdmitry/vk-android

VK — Android

Dirion · Senior Android · 2024 — сейчас

Работа над Android-приложением VK — соцсеть, музыка и мессенджер для 100M+ пользователей: производительность, консистентность UI и модульная архитектура.

Демо{ } Репозиторий
100M+
польз.
82%
покрытие
5
модулей → Clean
// Контекст

Android-приложение VK — 100M+ пользователей: соцсеть, музыка, мессенджер. На таком масштабе производительность ленты и консистентность UI напрямую влияют на удержание — заметен каждый пропущенный кадр.

// Что сделал
+Переписал списки ленты на Jetpack Compose с keyed, state-hoisted LazyColumn — меньше рекомпозиций
+Внедрил модульную архитектуру, чтобы команды выкатывали фичи независимо
+Перевёл 5 legacy-модулей на Clean Architecture с корутинами
+Поднял покрытие тестами ключевых модулей до 82%
feature/feed/FeedList.kt
@Composable fun Feed(items: List<Post>) {
- LazyColumn { items(items) { Row(it) } }
+ val st = rememberLazyListState()
+ LazyColumn(st) { items(items, {it.id}) { FeedRow(it) } }
// Результат
Плавный скролл ленты в приложении на 100M+ пользователей
Независимый стабильный релиз-цикл по модулям
82% покрытия в моих модулях
// Стек
KotlinJetpack ComposeCoroutinesClean ArchitectureModularization
Демо{ } РепозиторийВсе проекты