Рубрика «rollup»
Как работают криптовалюты
2025-01-26 в 16:13, admin, рубрики: bitcoin, Ethereum, Lightning Network, mining, proof of work, rollup, usdc, usdt, криптовалютаRollup: уже можно собирать приложения
2019-02-26 в 20:43, admin, рубрики: bundler, javascript, rollup, TypeScriptRollup — это сборщик javascript приложений и библиотек нового поколения. Многим он давно знаком как перспективный сборщик, который хорошо подходит для сборки библиотек, но плохо подходит для сборки приложений. Однако время идет, продукт активно развивается.
Я впервые попробовал его в начале 2017 года. Он сразу понравился мне за поддержку компиляции в ES2015, treeshaking, отсутствием модулей в сборке и конечно простым конфигом. Но тогда это был сырой продукт, с небольшим числом плагинов и очень ограниченной функциональностью, и я решил оставить его на потом и продолжил собирать через browserify. Вторая попытка была в 2018 году, тогда он уже значительно оброс комьюнити, плагинами и функционалом, но все еще не хватало качества в некоторых функциях, включая watcher. И вот наконец в начале 2019 года можно смело сказать — с помощью Rollup можно просто и удобно собирать современные приложения.
Читать полностью »
Как размер кода зависит от минификатора, сборщика и языка. Неожиданное обновление webpack
2019-02-20 в 7:20, admin, рубрики: javascript, rollup, webpack, Блог компании Яндекс, Исследования и прогнозы в IT, оптимизация, Разработка веб-сайтов, сборка, сжатие данныхМеня зовут Илья Гольдфарб, я разработчик интерфейсов Яндекса. Мне интересно следить за тем, как развиваются инструменты для сборки фронтенда, поэтому я стараюсь изучать изменения в каждом релизе популярных решений.
В преддверии выхода пятой версии webpack я хочу рассказать о его, казалось бы, минорном релизе 4.26.0 от 19 ноября 2018 года, где неожиданно и без объявления войны изменилась версия минификатора по умолчанию. Раньше это был пакет UglifyJS, теперь же используется Terser, форк UglifyES — ветки UglifyJS, которая может сжимать и ES5, и ES6 код. Terser появился, когда основной майнтейнер отказался поддерживать и развивать UglifyES. Впрочем, UglifyJS тоже прекратил свое развитие с августа 2018 года, когда был выпущен последний релиз. В новом форке исправили некоторые баги и немного отрефакторили код.
API этих минификаторов совместимый, но результат сжатия они выдают разный. Обычно изменения подобного уровня происходят лишь в мажорных, а не минорных обновлениях. Из-за этого многие разработчики могут не обратить внимания на нововведение. Конечно, в большинстве случаев всё будет работать, но никто не хочет стать тем, кто на продакшне своего проекта получит баги из-за системы сборки и минификации.
Вся эта история подвигла меня провести маленькое личное исследование сжатия. Вот вопросы, которые я задал:
- Что лучше сжимает ES5, Terser или UglifyJS?
- Что быстрее загружается: сжатая версия ES5 от Terser или от UglifyJS?
- Какая версия весит больше: ES5 или ES6? И как на это влияет TypeScript?
- Большая ли разница между настройками по умолчанию и ручной настройкой?
- А если не webpack? Кто выдаёт сборку меньшего размера, Rollup или webpack?
Как создавать компактный и эффективный javascript используя RollupJS
2017-06-22 в 9:11, admin, рубрики: browserify, bundler, bundling, grunt, guide, gulp, javascript, rollup, webpack
Последнее время все чаще и чаще на ряду с другими сборщиками javascript стал встречать rollupJS. И даже стал использовать его для написания модулей, используемых в основном проекте компании. Поэтому хочу поделиться с вами переводом стать об этом компактном и удобном сборщике.
Стиль — авторский.
Узнаете, об использовании Rollup как более компактную и эффективную альтернативу webpack и Browserify для объединения файлов JavaScript.
В конце этого руководства мы сконфигурируем Rollup для:
Почему не работает Tree Shaking и как с этим жить
2017-06-05 в 11:34, admin, рубрики: javascript, rollup, voximplant, webpack, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложений![Почему не работает Tree Shaking и как с этим жить - 1 Почему не работает Tree Shaking и как с этим жить - 1](https://www.pvsm.ru/images/2017/06/05/pochemu-ne-rabotaet-Tree-Shaking-i-kak-s-etim-jit.png)
В нашей предыдущей статье про голосовых ботов для Рокетбанка читатели возмутились, что в 2017 году примеры JavaScript для облака Voximplant написаны на ES5. У нас в облаке сильно модифицированный SpiderMonkey, специально обученный не течь и не падать. Тысячи одновременных звонков с параллельно выполняемым JavaScript как бы намекают, что нода – для нас не вариант. Тем не менее, никто не мешает использовать транспайлеры, компилировать ES2017/TypeScript/Elm/Whatever в старый добрый JavaScript и загружать результаты компиляции с помощью Continuous Integration. При таком раскладе возникает соблазн использовать все последние достижения из npmjs, собирая весь код в один ES5 бандл. И вот тут нас ждет засада: даже один метод из lodash дает на выходе бандл размером в полмегабайта. И не похоже, чтобы рекламируемый последние пару лет tree shaking работал.
Angular — настройка среды разработки и production сборки с AOT-компиляцией и tree-shaking (Gulp, Rollup, SystemJS)
2017-02-10 в 8:38, admin, рубрики: angular, angular2, build, development, gulp, javascript, production, rollup, systemjs, TypeScript, web, Блог компании ДоксВижн, Программирование, Разработка веб-сайтовОдна из особенностей Angular, присущая и первой и новой версии — высокий порог вхождения. Новый Angular, помимо всего прочего, трудно даже запустить. А и запустив, легко получить 1-2 Мб скриптов и порядка нескольких сотен запросов при загрузке hello world страницы. Можно, конечно, использовать всякие стартеры, seed'ы или Angular CLI, но для использования в серъезном проекте нужно самому во всем разбираться.
В этой статье я постараюсь описать, как настроить удобную среду разработки с использованием SystemJS, и production сборку Angular приложения на основе Rollup, с выходом около 100кб скриптов и нескольких запросов при открытии страницы. Использовать будем TypeScript и SCSS.
Попробовать все в деле можно в моем angular-gulp-starter проекте.