Ответ
В проекте применялась full-stack архитектура на основе Spring Boot 3.1 (Java) для backend и React 18 с TypeScript для frontend.
Backend-стек:
- Фреймворк: Spring Boot (модули Web, Data JPA, Security)
- База данных: PostgreSQL с Hibernate в качестве ORM
- Тестирование: JUnit 5 и Mockito для модульных и интеграционных тестов
- Деплой и оркестрация: Docker и Kubernetes
Frontend-стек:
- Библиотека/фреймворк: React 18 с TypeScript для типизации
- Управление состоянием: Redux Toolkit
- Компоненты UI: Material UI
Пример кода REST-контроллера на Spring Boot:
@RestController
@RequestMapping("/api/users")
public class UserController {
@GetMapping
public ResponseEntity<List<User>> getAllUsers() {
return ResponseEntity.ok(userService.findAllUsers());
}
}
Преимущества выбранного стека:
- Быстрый старт: Spring Boot предоставляет автоконфигурацию и встроенные серверы.
- Интеграция: Отличная поддержка облачных провайдеров и контейнеризации.
- Экосистема: Обе технологии имеют большое сообщество и множество готовых решений.