Если вы просто начните с JavaScript, количество инструментов и технологий, о которых вы услышите, могут быть подавляющим. И у вас может быть трудно решить, какие инструменты вам действительно нужно.
Или, может быть, вы знакомы с инструментами, но вы не думали о том, какие проблемы они решают и насколько несчастной ваша жизнь будет без их помощи.
Я считаю, что для разработчиков и разработчиков важно понять цель инструментов, которые мы используем каждый день.
Вот почему, в этой статье я смотрю на NPM, Babel, WebPack, Eslint и Circleci, и я пытаюсь уточнить проблемы, которые они решают, и как они их решают.
NPM
NPM – это менеджер пакета по умолчанию для разработки JavaScript. Это поможет вам найти и устанавливать пакеты (программы), которые вы можете использовать в своих программах.
Вы можете добавить NPM в проект, просто используя команду « NPM init ». Когда вы запускаете эту команду, она создает файл « Package.json » в текущем каталоге. Это файл, в котором указаны ваши зависимости, и NPM рассматривает его как удостоверение личности проекта.
Вы можете добавить зависимость с помощью команды « NPM INSTALL (PUBLE_NAME) ».
Когда вы запускаете эту команду, NPM переходит на удаленный реестр и проверяет, есть ли посылка, идентифицированная этим именем пакета. Если он это найдет, к вашему package.json И пакет с его внутренними зависимостями загружается из реестра.
Вы можете найти загруженные пакеты или зависимости под “Node_modules” папка. Просто имейте в виду, что он обычно становится довольно большим – поэтому убедитесь, что добавьте его в .gitignore. .
NPM не только облегчает процесс нахождения и загрузки пакетов, но также облегчает работу совместно на проекте.
Без НПМ было бы трудно управлять внешними зависимостями. Вам нужно будет загрузить правильные версии каждой зависимости вручную, когда вы присоединитесь к существующему проекту. И это было бы настоящим хлопотом.
С помощью NPM вы можете просто запустить «Установка NPM» И это установит все внешние зависимости для вас. Тогда вы можете просто запустить его снова в любое время, когда кто-то в вашей команде добавляет новый.
Варить
Babel – это компилятор JavaScript или транспортер, который переводит код ECMAScript 2015+ в код, который можно понять с помощью более старых двигателей JavaScript.
Babel является самым популярным компилятором JavaScript, а каркасы, такие как Vue, и реагируют его по умолчанию. То, что сказано, что концепции мы поговорим здесь не только связаны с Babel и будут применяться к любому компилятору JavaScript.
Почему вам нужен компилятор?
«Почему нам нужен компилятор, не JavaScript не интерпретированный язык? «Вы можете спросить, знакомы ли вы с концепциями скомпилированных и интерпретированных языков.
Это правда, что мы обычно называем что-то «компилятору», если он переводит наш читаемый человеком код на исполняемый двоичный файл, который можно понять у ЦП. Но это не так здесь.
Термин транспортер может быть более уместным, поскольку это подмножество компилятора: трансполеры являются компиляторами, которые переводят код с языка программирования на другой язык (в этом примере от современных JS к старой версии).
JavaScript – это язык браузеров. Но есть проблема с браузерами: поперечная совместимость. Инструменты JavaScript и сам язык развивается быстро, и многие браузеры не соответствуют этим темпам. Это приводит к вопросам совместимости.
Вы, вероятно, хотите написать код в самых последних версиях JavaScript, чтобы вы могли использовать его новые функции. Но если браузер, который работает ваш код, не реализовал некоторые из новых функций в своем JavaScript Engine, код не будет должным образом выполнен на этом браузере.
Это сложная проблема, потому что каждый браузер реализует функции на другой скорости. И даже если они выполняют эти новые функции, всегда будут люди, которые используют более старую версию своего браузера.
Итак, что, если вы хотите использовать последние функции, но и хотите, чтобы ваши пользователи просматривали эти страницы без каких-либо проблем?
Перед Бабелом мы использовали Polyfills для запуска более старых версий определенного кода, если браузер не поддерживал современные функции. И когда вы используете Babel, он использует полифимки за кулисами и не требует от вас ничего.
Как работают транспорты/компиляторы?
Бабел работает похожи на другие компиляторы. Он обладает анализами, преобразованием и этапы генерации кода.
Мы не будем углубиться здесь, в то, как это работает, поскольку компиляторы сложны. Но чтобы понять основы того, как работают компиляторы, вы можете проверить Проект-Super-Tiny-Compiler Project Отказ Также упоминается в официальной документации Бабела, так как полезно понять, как работает Вавилон.
Обычно мы можем сойти со знанием плагинов и предустановок Babel. Плагины – это фрагменты, которые Babel использует за кулисами, чтобы компилировать код до старых версий JavaScript. Вы можете подумать о каждой современной функции как плагин. Вы можете пойти в Это Ссылка, чтобы проверить полный список плагинов.
Предустановки – это коллекции плагинов. Если вы хотите использовать Babel для проекта React Project, вы можете использовать предварительно сделанные @ Babel/Preset-React который содержит необходимые плагины.
Вы можете добавить плагины, отредактировав файл Config Config.
Вам нужен Babel для вашего приложения React?
Для реакции вам нужен компилятор, поскольку React Code обычно использует JSX, и JSX необходимо скомпилировать. Также библиотека построена на концепции использования синтаксиса ES6.
К счастью, когда вы создаете проект с Create-raction-app , он поставляется с Babel уже настроенным, и вам обычно не нужно изменять конфигурацию.
Примеры компилятора в действии
Веб-сайт Babel имеет онлайн-компилятор, и это действительно полезно понять, как он работает. Просто подключите некоторый код и проанализируйте выходные данные.
WebPack
WebPack – это статический модуль Bundler. Когда вы создаете новый проект, большинство JavaScript Frameworks/BiBemsies используют его из коробки в настоящее время.
Если фраза «статический модуль Bundler» звучит с толку, продолжай читать, потому что у меня есть несколько отличных примеров, чтобы помочь вам понять.
Почему вам нужен Бандлер?
В веб-приложениях у вас будет много файлов. Это особенно дело для приложений для одной страницы (реагирование, VUE, угловой), с каждым имеющим собственные зависимости.
Что я подразумеваю в зависимости, является оператор импорта – если файл a должен импортировать файл b для правильной работы, то мы говорим, что зависит от B.
В небольших проектах вы можете обрабатывать зависимости модулей с
Оригинал: “https://www.freecodecamp.org/news/front-end-development-tools-you-should-know/”