01 Введение
001 Почему NodeJS для backend
Преимущества в использовании ноды на проектах:
- Для чего используется нода?
- Backend for fronend (написание фронтендерами полноценных запросов, которые можно встретить на бэке)
- Rest API
- Backend (Написание полноценного бэка для сайта)
- Document generators (перевод HTML-страницы в тот же pdf)
- Microservices (реализация микросервисной архитектуры)
- Test automation (самая удобная автоматизация тестов - cypress)
- Graph QL
- Web-sraping (парсинг HTML-страниц)
- SSR (рендер страницы на сервере)
- Где ноду не стоит использовать?
- Низкоуровневые приложения (работать непосредственно с компьютером достаточно сложно)
- Сложные многопоточные приложения (очень сложная реализация нагруженного многопоточного приложения)
- Программирование микроконтроллеров (выгоднее использовать C/C++, Rust)
Какие проблемы у ноды и чем их решить:
- Однопоточность. Основной поток в ноде всего один, но у нас есть Red Pool, биндинги, распределение через libuv.
- Типизация. TypeScript исправляет эту проблему.
- Архитектура. Структурируем через NestJS.