暫無描述

MrOzOn ab3a1839fa add dagger & hilt dependencies 4 年之前
app ab3a1839fa add dagger & hilt dependencies 4 年之前
gradle 4db64476c5 initial commit 4 年之前
.gitignore 4db64476c5 initial commit 4 年之前
README.md 97b138e11f add Detekt (static code analysis tool) 4 年之前
build.gradle ab3a1839fa add dagger & hilt dependencies 4 年之前
detekt-config.yml 97b138e11f add Detekt (static code analysis tool) 4 年之前
detekt.gradle 97b138e11f add Detekt (static code analysis tool) 4 年之前
gradle.properties 4db64476c5 initial commit 4 年之前
gradlew 4db64476c5 initial commit 4 年之前
gradlew.bat 4db64476c5 initial commit 4 年之前
settings.gradle 4db64476c5 initial commit 4 年之前

README.md

CurrencyConverter

Тестовое приложение - конвертор валют

Исходные данные

На экране пользователю доступы список всех валют с возможностью ввода. После изменения любого из полей все остальные поля пересчитываются согласно курса валют.

Курсы валют брать отсюда: https://www.cbr-xml-daily.ru/daily_json.js

При каждом входе в приложении следует пытаться загрузить по сети курсы валют и (в случае их доступности) сохранять их локально (кэшировать следует безусловно, не нужно проверять, отличаются ли загруженные курсы от закэшированных). В случае, если загрузить не удалось / не успели, следует использовать закэшированные курсы.

Обязательные требования:

  • Код пишется на Kotlin/Java.
  • Использовать мета­паттерн MVVM.

Будет плюсом:

  • В проекте имеется выверенная архитектура с четким разделением обязанностей по слоям.
  • Модель защищена юнит­тестами на уровне method coverage (branch coverage – это плюс, но необязательный).
  • Приложение оформлено в Material Design.

Используемый стек

  • MVVM
  • Kotlin Coroutines
  • Room
  • Retrofit

Дополнительные инструменты

  • статический анализатор кода Detekt (запуск проверки - команда ./gradlew detekt)