Що таке npm?
npm (Node Package Manager) — це офіційний пакетний менеджер для Node.js. Він дозволяє:
- Встановлювати сторонні бібліотеки та фреймворки
- Керувати залежностями проєкту
- Запускати скрипти (команди) через
package.json
Приклад ініціалізації проєкту з npm
npm init -y
Файл package.json (скорочений приклад)
{
"name": "my-project",
"version": "1.0.0",
"scripts": {
"start": "ts-node src/index.ts",
"build": "tsc"
},
"dependencies": {
"express": "^4.18.0"
},
"devDependencies": {
"typescript": "^5.0.0",
"ts-node": "^10.0.0"
}
}
Що таке tsconfig.json?
tsconfig.json — це файл конфігурації для компілятора TypeScript, який визначає, як слід компілювати код.
Приклад файлу tsconfig.json
{
"compilerOptions": {
"target": "ES2020",
"module": "CommonJS",
"rootDir": "src",
"outDir": "dist",
"strict": true,
"esModuleInterop": true
}
}
Основні опції:
target
— яку версію JS згенерувати (наприклад, ES2020)module
— тип модулів (CommonJS для Node.js)strict
— вмикає жорстку типізаціюesModuleInterop
— дозволяє імпортувати CommonJS-модулі як ES-модуліrootDir
/outDir
— папки для вхідного та вихідного коду
Інші пакетні менеджери
Окрім npm
, існують альтернативи:
- yarn — швидший, має функцію workspaces
- pnpm — ефективний за використанням диску, підтримує монорепозиторії
Приклад встановлення бібліотеки з типами
npm install express
npm install -D @types/express
У TypeScript проєктах потрібно встановлювати типи для бібліотек через пакет @types/<назва>
, якщо сама бібліотека їх не надає.
npm та tsconfig.json — це ключові інструменти для роботи з Node.js і TypeScript. Вони дозволяють структурувати, автоматизувати та масштабувати серверні застосунки з точністю, аналогічною до того, як pom.xml
або build.gradle
працює в Java-середовищі.
Visual Studio Code (VS Code)
VS Code — це легка, але потужна IDE для розробки на JavaScript/TypeScript. Вона має вбудовану підтримку IntelliSense, інтеграцію з Git, налагодження, а також величезну кількість плагінів.
Рекомендовані розширення для Node.js + TypeScript
ESLint
— перевірка стилю кодуPrettier
— автоформатуванняTypeScript
— підтримка мовиnpm Intellisense
— автозаповнення для імпортівPath Intellisense
— підказки для шляхів до файлівDebugger for Chrome
— налагодження у браузері (для full-stack)
Переваги VS Code
- Швидкий старт (на відміну від важких IDE, як IntelliJ IDEA)
- Вбудований термінал для роботи з
npm
,tsc
,npx
- Гнучка конфігурація:
settings.json
,launch.json
- Можливість працювати з Docker, Git, базами даних, REST API прямо в IDE
Node Version Manager (nvm)
nvm — це утиліта для керування версіями Node.js. Дозволяє легко встановлювати, перемикати, оновлювати Node.js без глобальних конфліктів.
Переваги nvm
- Можливість використовувати різні версії Node.js для різних проєктів
- Не потребує прав адміністратора
- Зручний для CI/CD, розробки, тестування старих проєктів
Установка nvm (Linux/macOS)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# або
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
Після установки перезапустіть термінал і перевірте:
nvm --version
Команди nvm
# Встановити останню LTS версію
nvm install --lts
# Встановити конкретну версію
nvm install 20.10.0
# Перемкнути версію
nvm use 20.10.0
# Переглянути список встановлених версій
nvm ls
# Встановити цю версію як дефолтну
nvm alias default 20.10.0
Інструменти VS Code та nvm значно спрощують розробку на Node.js + TypeScript. Java-розробники, які звикли до складної екосистеми з Maven/Gradle, можуть оцінити гнучкість і легкість запуску проектів з мінімумом конфігурації.
Коментарі
Дописати коментар