todo.pet/README.md

3.5 KiB
Raw Blame History

TodoApp

Описание

TodoApp - это консольное приложение для управления списком задач, разработанное на Java в качестве учебного проекта. Приложение построено на универсальной архитектуре с использованием generics, что позволяет легко расширять функционал для работы с различными типами сущностей.

Особенности

  • Консольный интерфейс с интуитивными командами
  • Универсальная архитектура на базе EntityService и Repository<T>
  • Поддержка поиска задач по тексту
  • Красивое табличное отображение данных
  • Типобезопасность через использование generics

Требования

  • Java 24 или выше
  • Maven 3.8.x или выше

Установка и запуск

cd ./todo
mvn clean package
java -jar ./target/todo.jar

Использование

Доступные команды

  • create <названиеадачи> - Создать новую задачу
  • list - Показать список всех задач в табличном виде
  • complete <id> - Отметить задачу как выполненную
  • delete <id> - Удалить задачу по ID
  • search <текст> - Найти задачи по тексту (минимум 3 символа)
  • help - Показать список всех команд
  • exit - Выйти из приложения

Пример использования

todo> create Изучить Java generics
Задача "Изучить Java generics" успешно добавлена!

todo> create Написать документацию
Задача "Написать документацию" успешно добавлена!

todo> list

ID │ Название задачи                 │ Статус
--------------------------------------------------
1  │ Изучить Java generics           │ В процессе
2  │ Написать документацию           │ В процессе


todo> complete 1

Задача ID-1 выполнена.

todo> search Java

ID │ Название задачи                 │ Статус
--------------------------------------------------
1  │ Изучить Java generics           │ Выполнена

Версии

Актуальная версия: 2.2.0

История изменений

  • 2.2.0 - Универсальная архитектура с generics, утилиты форматирования
  • 2.1.0 - Добавлена команда поиска, улучшено отображение
  • 2.0.0 - Базовый функционал управления задачами

Подробная история изменений доступна в CHANGELOG.md

Разработка

Проект использует современные подходы Java-разработки:

  • Generic programming для типобезопасности
  • Разделение ответственности через слоистую архитектуру
  • Command pattern для CLI-команд
  • Repository pattern для работы с данными

Лицензия

MIT