В чем разница между dependency и devDependency

«В чем разница между dependency и devDependency» — вопрос из категории Devops, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

dependency — это зависимости, необходимые для работы приложения в production. Они включаются в финальную сборку. Например, react, lodash.

devDependency — это зависимости, нужные только для разработки и тестирования. Они не попадают в production-сборку. Например, eslint, jest, webpack.

Пример package.json:

{
  "dependencies": {
    "react": "^18.2.0"
  },
  "devDependencies": {
    "eslint": "^8.56.0"
  }
}

Ключевые отличия:

  • npm install --production установит только dependencies.
  • devDependencies экономят место и время в production.