Удалёнка: опыт и лайфхаки
12 октября 2016

Facebook и Google выпустили Yarn, новый менеджер пакетов для JavaScript

JavaScriptПрограммирование


Вчера вечером Facebook официально анонсировала новый пакетный менеджер для JavaScript под названием Yarn. На одной из стадии разработки к проекту подключились компании Google, Exponent и Tilde.

«Самый популярный менеджер пакетов JavaScript — это NPM. Он обеспечивает доступ более чем к 300 тысячам пакетов. Используют его более 5 миллионов разработчиков, а ежемесячно к нему обращаются для загрузки более 5 миллиардов раз.

Мы успешно использовали NPM в Facebook в течение многих лет, но так как объем нашего кода и число разработчиков выросло, мы столкнулись с проблемами последовательности, безопасности и производительности. После попытки решить все эти вопросы, мы пришли к намерению создать собственное решение, чтобы обеспечить надежность управления разработкой. Итогом этой работы стал Yarn — быстрая, надежная и безопасная альтернатива клиенту NPM», — говорится в официальном блоге Facebook о новинке.

Разработчики Facebook утверждают, что Yarn все так же позволяет получить доступ к пакетам NPM, но при этом позволяет быстрее и последовательно управлять зависимостями между машинами, или работать в защищенной среде в автономном режиме. Это, по мнению создателей Yarn, позволит разработчикам сосредоточиться на том, что на самом деле важно — на создании новых продуктов и функций. Вот перечень основных отличительных особенностей Yarn:

  • автономный режим;
  • детерминированность;
  • производительность сети;
  • наличие нескольких реестров;
  • сетевая гибкость;
  • наличие Flat Mode;
  • больше эмодзи (и с котиками тоже).

У социальной сети было несколько причин для создания собственной альтернативы NPM. Конечно же, главной из них была производительность, а также скорость установки и распараллеливание операций. Еще Yarn позволяет достигнуть единообразия на разных машинах. В случае NPM, в зависимости от подключенных модулей, каталог node_modules мог сильно отличаться от машины к машине. В случае небольших команд, занимающихся разработкой, подобная кастомизация может и быть приемлемой, однако не в случае огромной DevOps-команды Facebook.

Разработчики оригинального NPM — коммерческая организация, которая была в курсе создания и скорого выхода в свет конкурента. Однако, бизнес-модель проекта построена не вокруг клиента, а вокруг каталога, который также используется и Yarn. Поэтому новинка от Facebook и Google не представляет для них большой угрозы.

Команда Facebook решила вынести свою разработку за пределы внутреннего репозитория компании и выложила Yarn на GitHub, где можно ознакомиться с проектом и принять участие в разработке.
Теги: facebook JavaScript NPM пакетный менеджер разработка DevOps
Хабы: JavaScript Программирование
+34
38,5k 81
Комментарии 113
Реклама

Рекомендуем