Легенда

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

Вам необходимо создать веб-приложение «Лунный планировщик», которое будет обеспечивать экипажу возможность создания, редактирования, удаления и отслеживания задач в удобном интерфейсе. Также необходимо реализовать возможность выставления приоритетов и реализации подзадач.

Например, во время полета на Луну вы обнаруживаете, что один из инструментов не работает должным образом и требует ремонта. Необходимо создать задачу на ремонт инструмента в системе управления задачами на борту корабля. Задача должна быть выделена высоким приоритетом и должна содержать подзадачи, связанные с обнаружением проблемы, поиском решения и выполнением ремонта.

Цель

Создание полноценного планировщика задач с возможностью выставления приоритетности и реализации подзадач. А также научиться использовать технологии и инструменты, такие как Java 11, PostgreSQL, Spring Boot, Hibernate в контексте создания приложения.

Задачи

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

Инструменты

  1. Java 11+
  2. Spring Boot — фреймворк для разработки веб-приложений на языке Java.
  3. PostgreSQL — реляционная база данных, которая будет использоваться для хранения данных.
  4. Hibernate — фреймворк для работы с базами данных на языке Java.
  5. Среда разработки, например, IntelliJ IDEA.
  6. Git — система контроля версий, для сохранения и управления исходным кодом.
  7. Maven — инструмент для автоматической сборки проекта и управления зависимостями.
  8. Тестовые фреймворки, такие как JUnit, Mockito для написания тестов.
  9. Thymeleaf — шаблонизатор для отрисовки веб-приложения.
  10. Bootstrap — фреймворк для верстки
  11. Lombok