Персональный трекер задач
Персональный трекер задач, который может общаться с пользователями через HTTP REST API или стандартные потоки ввода-вывода.
Трекер хранит данные в виде пар: дата - событие.
Дата - строка следующего вида: год-месяц-день, где год, месяц и день - целые числа.
Событие - строка из печатных символов без внутренних разделителей. Событие не может быть пустой строкой, а также в одну и ту же дату может произойти несколько событий.
Трекер поддерживает следующие команды:
Add Дата Событие - добавление события
Del Дата Событие - удаление события
Del Дата - удаление всех событий за конкретную дату
Find Дата - поиск событий за конкретную дату
Print - печать всех событий за все даты
StartApp - команда, символизирующая начало работы с трекером
Quit - команда завершения работы трекера. Дальнейший ввод становится невозможен и трекер его игнорирует
Микросервис построен с использованием принципов Clean architecture и предоставляет CLI и HTTP API (задается через флаг), база данных для задач построена на основе PostgresSQL, также предусмотрена возможность использования in-memory базы.
Развертывание микросервиса осуществляется командой:
Запуск сервиса для работы посредством HTTP REST API и PostgresSQL DB:
make run.http
Запуск сервиса для работы посредством CLI и local storage:
make run.local