0Pricing
JavaScript Academy · Урок

package.json, скрипты и зависимости: deps и devDeps

Разберитесь в полях package.json, определяйте простые скрипты и узнайте разницу между зависимостями и devDependencies

«package.json, скрипты и зависимости: deps и devDeps» — бесплатный урок JavaScript Academy на CoddyKit. Это урок 1 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения JavaScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс JavaScript Academy содержит 3 уроков всего.

Зачем нужен package.json?

Цель: читать и использовать package.json.

  • Основные поля: name, version, type
  • scripts: запускать короткие команды
  • dependencies и devDependencies
  • Семантические версии (циркумфлекс/тильда) — краткое знакомство для начинающих
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 1

Обзор полей

package.json — это манифест с информацией о проекте, сценариями и списками зависимостей.

// Emulate a minimal package.json as a JS object
const pkg = {
  name: "hello-app",
  version: "1.0.0",
  type: "module",
  scripts: {
    start: "node index.js",
    build: "echo building...",
    test: "echo tests..."
  },
  dependencies: {
    "chalk": "^5.3.0"
  },
  devDependencies: {
    "eslint": "^9.0.0"
  }
};

console.log("name:", pkg.name);
console.log("version:", pkg.version);
console.log("type:", pkg.type);
console.log("scripts:", Object.keys(pkg.scripts));
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 2

Сценарии по имени

Добавляйте команды в scripts (например, build, test), а затем запускайте их с помощью менеджера пакетов.

// Tiny emulator for "npm run <name>"
function runScript(name) {
  const cmd = pkg.scripts[name];
  if (!cmd) {
    console.log("no such script:", name);
    return;
  }
  console.log("running:", name, "->", cmd);
}

runScript("build");
runScript("test");
runScript("missing");
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 3

Что куда помещать?

dependencies нужны во время работы приложения, а devDependencies — это только инструменты для разработки.

// List production deps vs development-time tools
function listDeps() {
  console.log("deps:", Object.keys(pkg.dependencies));
  console.log("devDeps:", Object.keys(pkg.devDependencies));
}

// Rule of thumb in comments:
// dependencies -> needed at runtime (your app uses them when running)
// devDependencies -> only for development (lint, test, build tools)

listDeps();
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 4

Основы semver

Semver-диапазоны выражают допустимые обновления: циркумфлекс (минорные и исправляющие), тильда (только исправляющие) или точная версия.

// Semantic version ranges (intent only)
// ^1.2.3  -> allow minor/patch updates (1.x compatible)
// ~1.2.3  -> allow patch updates (1.2.x)
// 1.2.3   -> exact version

const ranges = ["^1.2.3", "~1.2.3", "1.2.3"];
for (const r of ranges) {
  console.log("range:", r);
}
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 5

Практические заметки

Советы:

  • Делайте сценарии короткими и понятными (например, build, test).
  • Библиотеки времени выполнения → dependencies; инструменты → devDependencies.
  • Начинайте с диапазонов ^; при необходимости позже зафиксируйте точные версии.
package.json, скрипты и зависимости: deps и devDeps — иллюстрация 6

Тест по полю scripts

Быстрая проверка: где находятся команды?

package.json, скрипты и зависимости: deps и devDeps — иллюстрация 7

Повторение

Повторение: package.json содержит информацию о проекте и scripts для запуска задач, а также отделяет dependencies (зависимости времени выполнения) от devDependencies (инструменты разработки). Используйте простые диапазоны semver, чтобы оставаться в актуальном состоянии.

package.json, скрипты и зависимости: deps и devDeps — иллюстрация 8

Часто задаваемые вопросы

Урок «package.json, скрипты и зависимости: deps и devDeps» бесплатный?

Да — полный текст урока «package.json, скрипты и зависимости: deps и devDeps» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс JavaScript Academy, подпишись на CoddyKit PRO. Курс JavaScript Academy содержит 3 уроков всего.

Чему я научусь в уроке «package.json, скрипты и зависимости: deps и devDeps»?

Разберитесь в полях package.json, определяйте простые скрипты и узнайте разницу между зависимостями и devDependencies Ты практикуешь JavaScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать JavaScript Academy?

Предыдущий опыт не требуется. JavaScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 3.

Сколько времени занимает урок «package.json, скрипты и зависимости: deps и devDeps»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке JavaScript Academy?

Да. Каждый урок JavaScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. package.json, скрипты и зависимости: deps и devDeps
  2. npx и диапазоны семантических версий
  3. Локальные и глобальные инструменты, bin и удобные для команды процессы
← Назад к JavaScript Academy