# Требования к выполнению лабораторных работ ### Проверяемые знания учащихся * Уровень знания языка Kotlin: * Описание и объявление числовых переменных, строк, массивов; * Использование управляющих конструкций, условных выражений, циклов; * Описание классов и интерфейсов; * Работа с Null-безопасностью. * Уровень знакомства с экосистемой Android: * Сборка, запуск и управление зависимостями проекта; * Создание макетов приложения; * Использование Data Binding; * Реализация навигации в приложении с помощью редактора навигации; * Работа с жизненным циклом фрагментов и активностей; * Использование шаблона построения архитектуры Model-View-ViewModel; * Использование Room для создания базы данных приложения. ### Требования к выполнению * В корне проекта приложения должен располагаться файл `README.txt` с описанием задания. * Приложение должно выполнять все функции, описанные в задании к лабораторной работе. * Приложение не должно содержать ошибок. * Приложение должно корректно обрабатывать неправильный ввод от пользователя. * Архитектура приложения должна соответствовать шаблону Model-View-ViewModel. * Навигация в приложении должна быть построена с помощью редактора навигации. * Для работы с базой данных (если она необходима) приложение должно использовать Room. * Приложение должно сохранять состояние экранов при смене ориентации. * Приложение должно обладать понятным интерфейсом: показывать помощь по использованию, для ввода данных приложение должно показывать приглашение с сообщением о типе вводимых данных (например, если в поле необходимо ввести имя пользователя, необходимо добавить соответствующую подсказку к этому полю). * Все отображаемые в приложении строки должны быть интернационализированы и располагаться в соответствующих файлах ресурсов: `res/values/strings.xml` (для строк на английском языке) и `res/values-ru/strings.xml` (для строк на русском).