Повышение производительности с помощью Nodemon для разработки TypeScript

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

Метод 1: базовая настройка Nodemon
Для начала давайте настроим Nodemon для базового проекта TypeScript. Сначала убедитесь, что Nodemon установлен глобально, выполнив следующую команду:

npm install -g nodemon

Затем перейдите в корневой каталог вашего проекта TypeScript и создайте файл nodemon.jsonсо следующей конфигурацией:

{
  "watch": ["src"],
  "ext": "ts",
  "exec": "ts-node ./src/index.ts"
}

Эта конфигурация указывает Nodemon отслеживать изменения в каталоге srcс расширением tsи выполнять файл index.tsс помощью ts-nodeвсякий раз, когда происходят изменения. Чтобы запустить сервер разработки с помощью Nodemon, выполните следующую команду:

nodemon

Метод 2: Nodemon с параллельным выполнением
В крупных проектах может одновременно работать несколько процессов, например внешнее приложение и внутренний сервер. Nodemon можно комбинировать с Concurrently для эффективного управления обоими процессами. Установите одновременно, выполнив:

npm install -D concurrently

Обновите файл nodemon.jsonследующим образом:

{
  "watch": ["src"],
  "ext": "ts",
  "exec": "ts-node ./src/index.ts"
}

Теперь создайте файл dev.jsonсо следующей конфигурацией:

{
  "scripts": {
    "start:backend": "nodemon",
    "start:frontend": "npm run start --prefix client"
  },
  "devDependencies": {
    "concurrently": "^6.0.1"
  },
  "concurrently": {
    "backend": "npm run start:backend",
    "frontend": "npm run start:frontend"
  }
}

Чтобы одновременно запустить внутренний и внешний серверы, выполните следующую команду:

npx concurrently -c dev.json

Метод 3: Nodemon с ts-node-dev
Другим популярным вариантом запуска приложений TypeScript является ts-node-dev, который обеспечивает более быстрое время запуска по сравнению с ts-node. Чтобы использовать ts-node-devс Nodemon, установите его, выполнив:

npm install -D ts-node-dev

Обновите файл nodemon.jsonследующим образом:

{
  "watch": ["src"],
  "ext": "ts",
  "exec": "ts-node-dev ./src/index.ts"
}

Теперь вы можете запустить сервер разработки с помощью Nodemon и ts-node-dev, запустив:

nodemon

Nodemon — это мощный инструмент, который повышает производительность при разработке TypeScript за счет автоматического перезапуска сервера при возникновении изменений. В этой статье мы рассмотрели три различных метода использования Nodemon с TypeScript, включая базовую настройку, сочетание с Concurrently для управления несколькими процессами и интеграцию с ts-node-devдля ускорения запуска. Эти методы, несомненно, ускорят ваш рабочий процесс разработки и сэкономят драгоценное время. Попробуйте Nodemon в своем следующем проекте TypeScript и ощутите разницу на собственном опыте.