Менеджер пакетов пряжи - следующая эволюция NPM

Это сообщение было впервые опубликовано на CodingTheSmartWay.com.

Недостатки современных менеджеров пакетов

Для большинства веб-разработчиков диспетчер пакетов является неотъемлемой частью рабочего процесса разработки. Менеджеры пакетов, такие как bower и npm, сегодня очень популярны. Npm - это пакет по умолчанию для платформы Node.js, а недавно он стал фактически стандартом для управления пакетами в мире JavaScript.

Однако у npm есть недостаток, который возникает при работе с проектами с большим количеством зависимостей. Установка пакетов в папку node_modules выполняется недетерминированным образом, поэтому точный порядок и уровни исправлений пакетов могут отличаться от одного человека к другому, что является источником потенциальных проблем.

Кроме того, для процесса установки npm требуется подключение к Интернету, поскольку каждый пакет загружается во время установки, а механизм кеширования недоступен. Нет возможности использовать диспетчер пакетов в автономном режиме, а процесс установки занимает много времени.

Представляем Yarn Package Manager

Менеджер пакетов пряжи был инициирован Facebook и поддерживается такими компаниями, как Google. Он был разработан для устранения ранее упомянутых недостатков и предоставления более продвинутого инструмента управления пакетами для упрощения рабочего процесса разработки.

Ниже перечислены основные характеристики пряжи:

  • Режим кэширования: если пакет уже был установлен ранее, Yarn может развернуть этот пакет без подключения к Интернету, поскольку он доступен во внутреннем кэше. Эта функция способствует более быстрому процессу установки.
  • Повышенная производительность и отказоустойчивость сети: для максимального использования сети Yarn ставит запросы в очередь и избегает водопадов запросов. Сбои установки, вызванные неудачными запросами, смягчаются постоянным повторением неудачных запросов.
  • Совместимость с реестром: Yarn совместим с обоими реестрами: npm и bower.
  • Детерминированный алгоритм установки: Yarn использует файлы блокировки, чтобы убедиться, что каталог node_modules имеет одинаковую структуру во всех средах разработки.
  • Безопасная установка: целостность пакета проверяется после каждой установки, чтобы избежать повреждения пакетов.

Установка пряжи

Yarn поставляется в виде пакета NPM, поэтому установку можно выполнить с помощью следующей команды:

$ npm install -g yarn

Это устанавливает yarn глобально в вашей системе. После успешного завершения установки yarn становится доступным в вашей системе. Далее вы найдете краткий обзор того, как использовать команду yarn.

Пряжа Рабочий процесс

Инициализация проекта

Новый проект инициализируется с помощью параметра init:

$ yarn init

Эта команда выполняется в каталоге проекта, и в результате вы получите различные вопросы в командной строке. :

После завершения процесса инициализации становится доступен файл package.json.

Добавление и удаление зависимостей

Добавление новой зависимости выполняется с помощью параметра добавления:

$ yarn add [package-name]

Если вы хотите выбрать конкретную версию пакета, используйте следующий синтаксис:
< br /> $ yarn add [package-name]@[version]

Это автоматически добавляет пакеты в файл package.json. Соответствует команде npm install [package-name] --save.

Добавление зависимостей разработки, одноранговых или необязательных зависимостей может быть выполнено с использованием одного из следующих флагов:

  • --dev
  • --peer
  • --optional

Например. если вы устанавливаете пакет с параметром --dev, зависимость добавляется в раздел devDependencies в package.json:

$ yarn add gulp --dev

Следующие результат будет доступен в package.json:

"devDependencies": {
"gulp": "^3.9.1"
}

Файл замка пряжи

Пряжа создает файл блокировки: yarn.lock. Этот файл обновляется при каждой операции (установке, обновлении или удалении пакетов) и отслеживает точную версию пакета. Если вы добавите этот файл блокировки в свой репозиторий Git, вы можете быть уверены, что один и тот же результат в node_modules/ воспроизводится во всех системах.

Будущее менеджеров пакетов

Будет ли yarn будущее управления пакетами в мире JavaScript? Не имея под рукой хрустального шара, ответить на этот вопрос довольно сложно. Тем не менее, менеджеры пакетов будут эволюционировать, и пряжа - хороший способ двигаться вперед. Тот факт, что пряжа поддерживается крупными технологическими компаниями, такими как Facebook и Google, гарантирует ее активное развитие. Поскольку yarn полностью совместим с проектами, которые управлялись с помощью npm, вы можете просто попробовать его самостоятельно без особых усилий.

Видеоурок

Этот видеоурок содержит шаги, описанные в тексте выше:

Это сообщение было впервые опубликовано на CodingTheSmartWay.com.