Шпаргалка: Python vs NodeJS

Это статья-шпаргалка, чтобы быстро разобраться в мире серверного JavaScript. Здесь вы узнаете как соотносятся привычные инструменты Python и их аналоги в мире JS.

Как запустить скрипт?

Python: python <script>
JS: node <script> или nodejs <script>

Как выбрать версию интерпретатора?

Python: Используйте pyenv для выбора версии Python
JS: Используйте nvm для выбора версии NodeJS

Виртуальное окружение

Как создать окружение?

Python: python -m venv <path>
JS: cd <path>; npm init или то же самое с yarn вместо npm, они взаимозаменяемы

Как удалить окружение?

Python: rm -r <path_to_venv>
JS: rm -r node_modules

Установка пакетов

Как поставить библиотеку глобально на ОС?

Python: pip install <package>
JS: npm install -g <package>

Как установить библиотеку в виртуальное окружение?

Python: source ./venv/bin/activate; pip install <package>
JS: npm install <package>

Откуда качать библиотеки? Где их будет искать пакетный менеджер?

Python: Библиотека пакетов pypi.org, pip качает их оттуда
JS: Библиотека пакетов npmjs.com, npm берёт их оттуда

Работа с зависимостями

Где хранить список зависимостей?

Python: В питоне несколько подходов. Используют requirements.txt, либо pyproject.toml.
JS: Есть один, единый подход, хранятся в package.json

Где хранить зависимости для разработки?

Python: requirements-dev.txt
JS: Тоже в package.json

Как установить зависимости?

Python:pip install -r requirements.txt
JS: npm install, зависимости берутся из package.json

Где заморозить зависимости, чтобы не обновлялись?

Python: requirements.freezed.txt или poetry.lock
JS: package-lock.json

Как установить зависимости без изменений, ровно те, что были заморожены?

Python pip install -r requirements.freezed.txt
JS: npm ci, зависимости берутся из package-lock.json

Вспомогательные скрипты

Где хранить вспомогательные bash-скрипты для сборки и тестирования проекта?

Python: файлы makefile или pyproject.toml, либо папка со скриптами scripts
JS: файл package.json

Читать подробнее


Попробуйте бесплатные уроки по Python

Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.

Переходите на страницу учебных модулей «Девмана» и выбирайте тему.