Приложение умеет:
- Создавать новую задачу, задача может быть трёх типов:
- обычные задачи - небольшие задачи не требующие деления на подзадачи;
- эпики - большие задачи, разделённые на несколько подзадач;
- подзадачи - небольшие задачи, входящие в эпик;
- Сохранять задачи разных типов и их статус, возможны три статуса:
- NEW — задача только создана, но к её выполнению ещё не приступили;
- IN_PROGRESS — над задачей ведётся работа;
- DONE — задача выполнена;
- Обновление статуса задачи.
- Получение задачи по её идентификатору.
- Получение списка всех подзадач определённого эпика.
- Получение списка всех задач.
- Удаление задачи по её идентификатору.
- Удаление всех задач.
- Расставлять задачи по приоритету.
- Проверять не пересекаются ли задачи по времени выполнения.
Для приложения реализована API и настроен доступ к методам трекера задач через HTTP-запросы.
Реализована возможность хранения данных приложения в файле и на отдельном сервере.
Для проверки работы приложения написаны unit-тесты.
Приложение написано на Java. Пример кода:
public class Main {
public static void main(String[] args) throws IOException, InterruptedException {
KVServer kvServer = new KVServer();
kvServer.start();
new HttpTaskServer();
}
}О том, как научиться создавать такие приложения, можно узнать в Яндекс-Практикуме