Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.
Кратко о задаче
Изначально дополнение npm (Node Package Manager) разрабатывалось как менеджер пакетов зависимостей Node.js. Оно упростило создание фронтальной части приложений (интерфейсной) в дополнение к серверу, написанному на JavaScript. Модуль yarn чаще идет в качестве расширения возможностей npm. Пример команды для установки yarn через npm:
Перед началом работы желательно обновить менеджер пакетов:
Теперь о практическом применении команд. В качестве тестовой базы можно использовать сервисы провайдера Simple-Server.
Подключим зависимости разработки
Отметим, что зависимости неодинаковы. Ряд из них востребован лишь на этапе разработки, затем же их можно свободно удалять. Хотя они остаются функционально необходимыми, но их наличие дает замедление при установке, ведь на инсталляцию дополнительных модулей тратится время.
Типичный вариант зависимости разработки – программы для тестов вроде mocha или jest. Они устанавливаются в раздел devDependencies ранее созданного нами файла package.json. Выполним процедуру командой:
# NPM
$ npm install --save-dev mocha
# сокращенная версия
$ npm i -D mocha
# Yarn
$ yarn add --dev mocha
# сокращенная версия
$ yarn add -D mochaПодключим продакшн-зависимости в проект
Если зависимость критична для функционирования приложения, ее необходимо устанавливать независимо от стадии, будь то разработка или продакшн. В такую категорию попадают пакеты вроде express, react, от которых зависит файловая структура, поддержка API, генерация пользовательского интерфейса и пр. Их добавление формально ничем не отличается от зависимостей разработки, но раздел, куда их будем размещать другой – dependencies. Введем команды:
# NPM
$ npm install --save express
# сокращенная версия
$ npm i -P express
# Yarn
$ yarn add expressПоставим глобальные зависимости
Разработка однотипных приложений делает более удобным инсталляцию требуемых пакетов. Тогда они станут открытыми для старых и вновь создаваемых в действующей системе пакетов и не будут требовать времени и ресурсов на дублирование служебных файлов. Подобным образом пакеты инсталлируют «глобально». В список вносят утилиты, обычно запускаемые в паре с другими, без которых невозможно функционирование системы. Пример команды:
# NPM
$ npm install --global json
# сокращенная версия
$ npm i -g json
# Yarn
$ yarn global add jsonУдалим зависимости из текущего проекта
Разработка приложений рано или поздно подходит к этапу, когда часть системных файлов уже не нужна. Относится это и к зависимостям, которые использовали на этапе написания и тестирования кода. По завершении проекта они перестают нести какой-либо функциональный смысл и их нужно удалять из системы. Понятно, что важно четко понимать, какие пакеты точно не пригодятся, чтобы случайно не сломать то, что, возможно, изготавливалось не одну неделю.
Пример для деинсталляции зависимостей из проекта:
# NPM
$ npm uninstall jest
# сокращенная версия
$ npm r jest
# Yarn
$ yarn remove jestПриведенная команда удалит пакеты из node_modules и уберет зависимость из package.json.
То же относится и к глобальным зависимостям. Если ряд однотипных проектов завершен, они уже никакой роли на рабочей машине программиста не играют. Процедура удаления аналогична ранее приведенному примеру, но здесь используется опция --global, как и при инсталляции зависимостей с глобальным значением.
# NPM
$ npm uninstall --global json
# сокращенная версия
$ npm r -g json
# Yarn
$ yarn global remove jsonНужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.