| Задача / слой | Java / Spring Boot | Аналоги в React Native / Node.js | Комментарий |
|---|---|---|---|
| Язык и среда | Java + JVM | JavaScript / TypeScript + Node.js | Единый язык для фронта и бэка; работает на всех платформах. |
| Web / API-фреймворк | Spring Boot / Spring MVC | NestJS, Express, Fastify, Next.js API Routes | NestJS — ближе всех к Spring Boot: DI, модули, декораторы, MVC-архитектура. |
| ORM и базы данных | Hibernate / JPA | TypeORM, Prisma, Sequelize, Objection.js | TypeORM — почти полная копия Hibernate для TypeScript; Prisma — современный ORM с миграциями. |
| DI / IoC-контейнер | Spring Context / @Autowired | NestJS DI, InversifyJS, TSyringe | NestJS использует собственный контейнер с декораторами; InversifyJS — общий DI для TS. |
| Конфигурации | application.yml |
.env, dotenv, config, nestjs/config
|
Используются .env-файлы или конфигурационные модули.
|
| Безопасность / JWT / RBAC | Spring Security | Passport.js, NestJS Auth, jsonwebtoken | JWT-middleware, Guards, стратегии авторизации. |
| Документирование API | Springdoc / OpenAPI | Swagger-UI / OpenAPI NestJS, typed-routes, Redoc | NestJS-Swagger генерирует OpenAPI-документацию из декораторов. |
| Тестирование | JUnit 5 + Mockito | Jest, Supertest, Mocha/Chai, Sinon | Jest — стандарт де-факто для юнит-тестов; Supertest — для REST-API. |
| Асинхронность / потоки | CompletableFuture, @Async | async/await, Promises, RxJS (в NestJS) | Полная асинхронность встроена в JS, RxJS добавляет реактивность. |
| Логирование | SLF4J / Logback | winston, pino, nestjs/logger | Winston и pino — мощные логгеры с форматами и уровнями. |
| Документация кода | Javadoc | JSDoc, TypeDoc | Генерация HTML-документации для TS/JS-проектов. |
| Мониторинг / Health-check | Spring Actuator | @nestjs/terminus, pm2 health, Prometheus exporter | Terminus модуль делает /health-эндпойнты. |
| Сборка / зависимости | Maven / Gradle | npm, yarn, pnpm, ts-node | Менеджеры пакетов и скрипты. |
| Задача / слой | Java / Spring Boot | Аналоги в React Native / Node.js | Комментарий |
|---|---|---|---|
| Язык и среда | Java + JVM | JavaScript / TypeScript + Node.js | Единый язык для фронта и бэка; работает на всех платформах. |
| Web / API-фреймворк | Spring Boot / Spring MVC | NestJS, Express, Fastify, Next.js API Routes | NestJS — ближе всех к Spring Boot: DI, модули, декораторы, MVC-архитектура. |
| ORM и базы данных | Hibernate / JPA | TypeORM, Prisma, Sequelize, Objection.js | TypeORM — почти полная копия Hibernate для TypeScript; Prisma — современный ORM с миграциями. |
| DI / IoC-контейнер | Spring Context / @Autowired | NestJS DI, InversifyJS, TSyringe | NestJS использует собственный контейнер с декораторами; InversifyJS — общий DI для TS. |
| Конфигурации | application.yml |
.env, dotenv, config, nestjs/config
|
Используются .env-файлы или конфигурационные модули.
|
| Безопасность / JWT / RBAC | Spring Security | Passport.js, NestJS Auth, jsonwebtoken | JWT-middleware, Guards, стратегии авторизации. |
| Документирование API | Springdoc / OpenAPI | Swagger-UI / OpenAPI NestJS, typed-routes, Redoc | NestJS-Swagger генерирует OpenAPI-документацию из декораторов. |
| Тестирование | JUnit 5 + Mockito | Jest, Supertest, Mocha/Chai, Sinon | Jest — стандарт де-факто для юнит-тестов; Supertest — для REST-API. |
| Асинхронность / потоки | CompletableFuture, @Async | async/await, Promises, RxJS (в NestJS) | Полная асинхронность встроена в JS, RxJS добавляет реактивность. |
| Логирование | SLF4J / Logback | winston, pino, nestjs/logger | Winston и pino — мощные логгеры с форматами и уровнями. |
| Документация кода | Javadoc | JSDoc, TypeDoc | Генерация HTML-документации для TS/JS-проектов. |
| Мониторинг / Health-check | Spring Actuator | @nestjs/terminus, pm2 health, Prometheus exporter | Terminus модуль делает /health-эндпойнты. |
| Сборка / зависимости | Maven / Gradle | npm, yarn, pnpm, ts-node | Менеджеры пакетов и скрипты. |
// Пример кода
function hello(name) {
console.log(`Hi, ${name}!`);
}
hello("Sergey");