Ответ
Kotlin + Jetpack Compose для UI, так как это современный декларативный подход от Google.
Архитектура: Clean Architecture + MVVM (ViewModel + Flow) для разделения слоёв и реактивности.
Сетевые запросы: Retrofit + Kotlin Serialization для API, OkHttp с логгированием.
Локальное хранилище: Room + DataStore (для SharedPreferences).
DI: Hilt – упрощает внедрение зависимостей.
Тестирование: JUnit, MockK, Espresso (UI-тесты).
Дополнительно:
- Coil для загрузки изображений
- Coroutines для асинхронности
- Timber для логов
Пример DI модуля:
@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
fun provideApi(): MyApi = Retrofit.Builder()
.baseUrl("https://api.example.com/")
.addConverterFactory(Json.asConverterFactory("application/json".toMediaType()))
.build()
.create(MyApi::class.java)
}