Todo App

Консольное приложение для управления списком задач, разработанное на Java в процессе изучения языка.

Описание проекта

Todo App — это консольное приложение, которое позволяет пользователю создавать, просматривать и управлять списком задач. Приложение поддерживает полный цикл работы с задачами: создание новых задач, изменение их статуса (начать выполнение, отметить как завершенные или отмененные) и просмотр полного списка задач.

Возможности

  • Создание новых задач с названием и описанием
  • Управление статусом задач:
    • Новая задача
    • В процессе выполнения
    • Завершена
    • Отменена
  • Просмотр списка всех задач
  • Цветовая индикация статуса задач в консоли
  • Защита от некорректного ввода пользователя

Структура проекта

Проект организован на основе Maven и содержит следующие классы:

  • TodoApp — основной класс приложения с главным методом, пользовательским интерфейсом и менеджером задач
  • Task — класс, представляющий задачу, с методами для управления её статусом
  • TaskStatus — перечисление (enum) доступных статусов задачи с возможностью цветового оформления

Технологии

  • Java 24
  • Maven для управления сборкой проекта

Запуск приложения

Требования

  • JDK 24 или выше
  • Maven 3.6+

Компиляция и запуск

# Клонировать репозиторий
git clone https://github.com/kamask/todo-app.git
cd todo-app

# Скомпилировать проект
mvn clean package

# Запустить приложение
java -jar target/todo-1.0-SNAPSHOT.jar

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

После запуска приложения вы увидите главное меню:

┌──────────────────────────┐
|  [1] Добавить дело       |
|  [2] Список дел          |
|                          |
|  [0] Выйти из программы  |
└──────────────────────────┘
  • Выберите 1 для создания новой задачи
  • Выберите 2 для просмотра списка всех задач
  • Выберите 0 для выхода из программы

Лицензия

Этот проект распространяется под лицензией MIT.

Description
TodoApp - это консольное приложение для управления списком задач, разработанное на Java в качестве учебного проекта. Приложение построено на универсальной архитектуре с использованием generics, что позволяет легко расширять функционал для работы с различными типами сущностей.
Readme 183 KiB
v2.2.0 Latest
2025-06-08 12:00:30 +03:00
Languages
Java 100%