46 lines
4.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Практическая работа. Ежедневник
В данном практическом задании предлагается дописать существующий проект-заготовку Android приложения, имитирующего ведение ежедневника.
Советуем сначала склонировать шаблон-заготовку проекта и импортировать проект в Android Studio или IntelliJ IDEA, так как процесс импорта может занимать продолжительное время.
Измените код существующих классов и интерфейсов, дополните разметку, ресурсы и манифест, чтобы приложение отвечало следущим требованиям:
1. Интерфейс приложения должен содержать элементы, перечисленные в табл. 1.
2. При запуске приложения все текстовые поля для ввода данных должны быть пустыми, в них должна отображаться подсказка.
3. По нажатии на кнопку «`Сохранить`» в случае отсутствия информации о названии события появляется *Snackbar* c текстом «`Введите название события!`» (без кавычек).
4. По нажатии на кнопку «`Сохранить`» в случае указания названия события появляется диалоговое окно с кнопкой «`OK`» и текстом, как представлено ниже.
```
Записано!
Событие: title
Дата: date
Время: time
Заметки: notes
```
5. Дата выводится в формате: `дд.мм.гггг`.
6. После нажатия на кнопку «`Сохранить`» все текстовые поля очищаются.
| № | View type | id | hint | text |
| :-: | ------- | -- | ---- | ----- |
| 0 | *EditText* | `event_title_user_input` | Название события | |
| 1 | *EditText* | `event_time_user_input` | Время события | |
| 2 | *EditText* | `event_notes_user_input` | Заметки к событию | |
| 3 | *CalendarView* | произвольно | | |
| 4 | *Button* | произвольно | | Сохранить |
*Таблица 1. Элементы пользовательского интерфейса*
Рекомендуется использовать Android Studio Bumblebee 2021.3.1. В проекте gradle version 7.5, gradle plugin version 7.3.0.
Сдать в систему тестирования необходимо zip архив, в корневом каталоге которого располагается дополненный проект Android Studio/IntelliJ IDEA. После загрузки zip архива приложение будет запущено в системе автоматического тестирования для проверки на соответствие техническому заданию.
Допускается использовать язык Java и/или Kotlin. При сборке проекта вcе изменения в файле build.gradle будут проигнорированы будут использованы зависимости только из шаблона-заготовки; не изменяйте пакет приложения.
Тестирование одной посылки может длиться до 5 минут, после завершения тестирования будет доступна информация об общем числе тестов и числе пройденных тестов. Количество посылок в систему не ограничено. Штраф за повторные попытки не начисляется.
| № | Тест | Балл | Проверка |
| :-: | -- | -- | --- |
| 1 | mainTest | 1 | Показ AlertDialog |
| 2 | emptyTest | 1 | Очищение полей ввода |
*Таблица 2. Критерии оценивания и тесты*