Разработка сайтов в Москве. 5 инструментов JavaScript, на которые стоит обратить внимание

 
 

Экосистема JavaScript развивается быстрыми темпами, и вы знаете, что ваш набор инструментов будет заменен в тот момент, когда вы его выберете!

Невозможно уследить за всеми библиотеками, фреймворками и техниками, но можно наблюдать тенденции и направления движения внутри отрасли. React.js, Vue.js, Svelte, Node.js и Express.js останутся популярными, но всплывают некоторые интересные вспомогательные инструменты.

Вот мой лучший выбор. Но, пожалуйста, не полагайтесь на мое мнение. Оцените их сами.

Свернуть.js

Rollup.js — это сборщик модулей JavaScript следующего поколения от Рича Харриса, автора Svelte. Он компилирует небольшие фрагменты кода в более крупные отдельные файлы и включает в себя:

архитектура плагина

Базовую систему можно расширить с помощью таких плагинов, как транспиляция Babel ES5, интеграция TypeScript, ESLinting, минимизация Terser и даже обработка CSS.

совместимость модулей

Rollup.js поддерживает стандартные модули ES6, но модули CommonJS на основе Node require () можно анализировать с помощью плагина.

деревотрясение

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

разделение кода

Rollup может разбивать код на куски для динамической загрузки (по требованию) или нескольких точек входа.

Rollup.js можно запустить из командной строки, npmскрипта и общих средств выполнения задач, таких как Gulp, с параметрами наблюдения или без них.

Файл rollup.config.jsможет быть определен для более сложных конфигураций. Например:

// rollup.config.js

// CommonJS plugin

import commonjs from '@rollup/plugin-commonjs’;

export default {

// primary source entry script

input: '. /src/main.js’,

// output script and format

output: {

file: '. /build/main.js’,

format: 'iife’

},

// plugins

plugins: [

commonjs ()

]

};

Rollup.js впервые появился, но набирает обороты благодаря своей скорости и простоте. Возможно, вы использовали его, не осознавая этого, в Snowpack.

Снежный покров

Snowpack — это быстрый инструмент для создания внешнего интерфейса и прямой конкурент тяжеловесным инструментам, таким как webpack и Parcel. Преимущества включают в себя:

мгновенный запуск

одиночная сборка с кэшированием

горячая перезагрузка модуля

десятки плагинов

встроенная поддержка модулей ES6, модулей CommonJS, TypeScript, Svelte, React, JSX, модулей CSS и т. д.

Snowpack автоматически создает активы. Вы можете установить его в любой проект как зависимость разработки:

npm install —save-dev snowpack

Затем запустите сервер разработки:

npx snowpack dev

Это откроет index.htmlфайл по умолчанию в вашем браузере. Все страницы сканируются на наличие файлов JavaScript и CSS, которые объединены в отдельные ресурсы.

Окончательный производственный сайт может быть создан в buildкаталоге с:

npx snowpack build

Файл snowpack.config.jsконфигурации может определять плагины и дополнительные параметры.

Разработка шла быстро, и в январе была запущена версия Snowpack 3.0. Согласно веб-сайту, «попробовав его, вернуться к чему-то другому уже невозможно».

Рим

Современная разработка требует от вас установки, настройки и изучения ряда инструментов с использованием различных методов и приемов. Rome стремится унифицировать цепочку инструментов разработки интерфейса, предоставляя линтер, компилятор, упаковщик, генератор документов, средство форматирования, средство запуска тестов и минификатор для содержимого HTML, CSS и JavaScript. По сути, это пакет с нулевой зависимостью, который заменяет webpack, Babel, ESLint, Prettier, Jest и другие.

Rome находился в активной разработке, и на момент написания статьи поддерживается только linting. Тем не менее, проект привлек значительное внимание, и недавний запрос на финансирование превысил более четверти его цели в 100 000 долларов.

Если Рим сможет успешно достичь своих целей, он может стать единственным инструментом, который вам нужен.

строить

Неудивительно, что большинство инструментов сборки JavaScript написаны на JavaScript. Скорость обычно приемлема, но скомпилированное приложение всегда будет быстрее. esbuild — еще один сборщик модулей JavaScript, но он написан на Go. Он утверждает, что:

В 100 раз быстрее, чем Rollup.js

В 173 раза быстрее, чем Webpack 5

В 294 раза быстрее, чем Parcel 2

Время создания производственного пакета из десяти копий three.js с использованием настроек по умолчанию, минимизации и исходных карт:

сравнение времени сборки esbuild

esbuild достигает этой скорости без кеша и по-прежнему поддерживает модули ES6, модули CommonJS, TypeScript, JSX, встряхивание деревьев, исходные карты, минификацию, плагины, объединение Node.js, полный API и многое другое.

Эван Уоллес является единственным основным разработчиком esbuild, и версия 1.0 еще не выпущена. Это может вызвать тревогу у команд, работающих над критически важными приложениями, но обновления поступают быстро. Следите за проектом.

путевая точка

Выпуск вашего производственного сайта на хост остается проблемой. Некоторые предлагают системы сборки на основе Git. Другие используют процессы контейнеризации. Многие из них имеют свою собственную странную и замечательную терминологию и методы. Предполагая, что вы успешно преодолели сложности процесса сборки AWS, сможете ли вы переключиться на Azure по прихоти вашего начальника или клиента?

Waypoint абстрагирует процесс выпуска, чтобы обеспечить согласованный рабочий процесс для сборки, развертывания и выпуска на любой платформе. Для развертывания требуется одна команда:

waypoint up

Waypoint — это проект с открытым исходным кодом, который в настоящее время поддерживает проекты JavaScript, Ruby, Python, Go и.NET в Kubernetes, Amazon ECS, Google Cloud Run, Azure Container Instances, Docker, Buildpacks и т. д. Он расширяемый, а система плагинов позволяет ему работать с любым инструментом или платформой. После успешного развертывания Waypoint предоставляет полный доступ к журналам, мониторам и другим процессам для управления вашим приложением.

Бонусные инструменты

Вот еще несколько инструментов, которые, вероятно, достигнут критической массы...

одиннадцать

Eleventy — это генератор статических сайтов Node.js, разработанный Заком Лезерманом из Netlify. Это просто, быстро и было принято многими разработчиками веб-индустрии. И это еще не дошло до версии 1.0. Наблюдайте, как коммерческое использование значительно возрастет, когда эта веха будет выпущена.

Дополнительные сведения см. в разделе Начало работы с Eleventy.

Дено

Deno — это среда выполнения JavaScript, использующая движок Chrome V8. Он был разработан Райаном Далем — создателем Node.js. По сути, это Node с преимуществом десятилетней ретроспективы.

Deno является новым, и он сглаживает некоторые морщины, с которыми вы могли столкнуться при разработке серверного JavaScript. Прежде всего, он повышает безопасность и выбирает модули ES6, подобные браузеру, импортированные из URL-адреса, а не модули CommonJS, управляемые npm. Версии модуля сохраняются в вашей системе только один раз, поэтому нет необходимости иметь многомегабайтную node_modulesпапку в каждом проекте.

Deno также предоставляет ряд встроенных инструментов, поэтому нет необходимости в сторонних опциях. Он включает в себя средство обновления, справочную систему, цикл чтения-оценки-печати (REPL), инспектор зависимостей, линтер, средство форматирования кода, средство запуска тестов, генератор документации, отладчик, сборщик сценариев и установщик платформы.

Наконец, Deno поддерживает некоторые API, которые вы найдете в браузерах. В частности, fetch, window, URL, File, FileReader, и такие события, как loadи unload.

Node.js не умер, и Deno еще предстоит покорить мир.

3D-печать5GABC-анализAndroidAppleAppStoreAsusCall-центрChatGPTCRMDellDNSDrupalExcelFacebookFMCGGoogleHuaweiInstagramiPhoneLinkedInLinuxMagentoMicrosoftNvidiaOpenCartPlayStationPOS материалPPC-специалистRuTubeSamsungSEO-услугиSMMSnapchatSonyStarlinkTikTokTwitterUbuntuUp-saleViasatVPNWhatsAppWindowsWordPressXiaomiYouTubeZoomАвдеевкаАктивные продажиАкцияАлександровск ЛНРАлмазнаяАлчевскАмвросиевкаАнализ конкурентовАнализ продажАнтимерчандайзингАнтрацитАртемовскАртемовск ЛНРАссортиментная политикаБелгородБелицкоеБелозерскоеБердянскБизнес-идеи (стартапы)БрендБрянкаБукингВахрушевоВендорВидеоВикипедияВирусная рекламаВирусный маркетингВладивостокВнутренние продажиВнутренний маркетингВолгоградВолновахаВоронежГорловкаГорнякГорскоеДебальцевоДебиторкаДебиторская задолженностьДезинтермедитацияДзержинскДивизионная система управленияДизайнДимитровДирект-маркетингДисконтДистрибьюторДистрибьюцияДобропольеДокучаевскДоменДружковкаЕкатеринбургЕнакиевоЖдановкаЗапорожьеЗимогорьеЗолотоеЗоринскЗугрэсИжевскИловайскИрминоКазаньКалининградКировскКировскоеКомсомольскоеКонстантиновкаКонтент-маркетингКонтент-планКопирайтингКраматорскКрасноармейскКрасногоровкаКраснодарКраснодонКраснопартизанскКрасный ЛиманКрасный ЛучКременнаяКураховоКурскЛисичанскЛуганскЛутугиноМакеевкаМариупольМаркетингМаркетинговая информацияМаркетинговые исследованияМаркетинговый каналМаркетинг услугМаркетологМарьинкаМедиаМелекиноМелитопольМенеджментМерчандайзерМерчандайзингМиусинскМолодогвардейскМоскваМоспиноНижний НовгородНиколаевНиколаевкаНишевой маркетингНовоазовскНовогродовкаНоводружескНовосибирскНумерическая дистрибьюцияОдессаОмскОтдел маркетингаПартизанский маркетингПервомайскПеревальскПетровскоеПлата за кликПоисковая оптимизацияПопаснаяПравило ПаретоПривольеПрогнозирование продажПродвижение сайтов в ДонецкеПроизводство видеоПромоПромоушнПрямой маркетингРабота для маркетологаРабота для студентаРазработка приложенийРаспродажаРегиональные продажиРекламаРеклама на асфальтеРемаркетингРетро-бонусРибейтРитейлРовенькиРодинскоеРостов-на-ДонуРубежноеСамараСанкт-ПетербургСаратовСватовоСвердловскСветлодарскСвятогорскСевастопольСеверодонецкСеверскСедовоСейлз промоушнСелидовоСимферопольСинергияСколковоСлавянскСнежноеСоздание сайтов в ДонецкеСоледарСоциальные сетиСочиСтаробельскСтаробешевоСтахановСтимулирование сбытаСуходольскСчастьеТелемаркетингТельмановоТираспольТорговый представительТорезТрейд маркетингТрейд промоушнТюменьУглегорскУгледарУкраинскХабаровскХарцызскХерсонХостингЦелевая аудиторияЦифровой маркетингЧасов ЯрЧелябинскШахтерскЮжно-СахалинскЮнокоммунаровскЯндексЯсиноватая