- Допускаются языки: Kotlin, Java.
- Исходный код выполненного задания должен быть размещен в git репозитории
- Проект должен собираться и запускаться.
- Будет большим плюсом если вы будете следовать принципам SOLID, Clean Architecture и придерживаться паттерна MVVM или MVI.
- На экране находится 6 элементов:
- Поля для ввода имени и фамилии.
- Поле для ввода даты рождения.
- Поля для ввода пароля и его подтверждения.
- Кнопка «Регистрация».
- «Регистрация» не может быть завершена, пока все данные не будут валидны. Правила для корректных данных придумайте сами. Например, фамилия не может содержать менее двух символов, пароль должен содержать цифры и буквы верхнего регистра, и т.д.
- Если данные валидны, то мы переходим на «Главный экран» приложения.
- На экране 1 элемент — кнопка «Приветствие».
- По нажатию на эту кнопку появляется модальное окно, в котором находится приветствие пользователя с указанием имени, которое было введено на самом первом экране регистрации.
- Сделать выбор даты рождения интерактивным
- Уведомлять/показывать сообщение о том, где именно была допущена ошибка при «Регистрации».
- Кнопка «Регистрация» должна быть недоступна для нажатия, пока все поля не будут заполнены.
- Реализовать кеширование данных и сохранение сессии: если пользователь единожды прошёл регистрацию, то следующий запуск приложения будет начинаться с главного экрана.