Работая в крупной компании довелось перехватить внутренний проект, который нужно было сдать вчера. Народ кочевал и топтался по нему, развивая культуру Святого Копипаста. А package.json рос не по дням, а по часам. Спустя только год удалось приступить к рефакторингу. В этой статье речь пойдет об одной конкретной оптимизации, о которой на просторах рунета я ничего не слышал.
Рубрика «webpack» - 7
Очевидная неочевидность в сборке с помощью Webpack
2017-10-02 в 21:36, admin, рубрики: bundle, javascript, node.js, nodejs, optimization, refactoring, webpack, рефакторингРазвертывание кода ES2015+ в продакшн сегодня
2017-09-25 в 7:13, admin, рубрики: ES6, javascript, perfomance optimization, production, webpack, высокая производительность, Разработка веб-сайтовБольшинство веб-разработчиков, с которыми я общаюсь сейчас, любят писать JavaScript со всеми новейшими функциями языка — async/await, классами, стрелочными функциями и т.д. Однако, несмотря на то, что все современные браузеры могут исполнять код ES2015+ и изначально поддерживают упомянутый мной функционал, большинство разработчиков по-прежнему транспилируют свой код на ES5 и связывают его с полифиллами, чтобы удовлетворить небольшой процент пользователей, все еще работающих в старых браузерах.
Это отвратительно. В идеальном мире мы не будем развертывать ненужный код.
Читать полностью »
Настройка среды разработки Webpack 3 + Angular 4: от сложного к простому
2017-09-09 в 13:01, admin, рубрики: angular, angular 4, AngularJS, hmr, javascript, node.js, TypeScript, webpack, Блог компании NetcrackerВсем привет!
Современное front-end-приложение на Angular должно включать в себя следующие характеристики:
- Возможность использования типизированного JS — Typescript
- Обеспечение удобства и производительности разработки с помощью HMR (hot module replacement);
- Модульность приложений и возможность отложенной загрузки модулей (Lazy Loading);
- AoT — режим (ahead-of-time), повышающий производительность приложения.
Существует много вариантов сборки, решающих эти задачи (angular cli, A2 seed и т. д.). Обычно они имеют сложную структуру, плохо настраиваются/расширяются и представляют собой монолит, который невозможно изменить.
В статье я расскажу, как совместить Angular 2+ с webpack и разобраться со всеми этапами сборки/разработки.
Вы удивитесь, как это просто. Читать полностью »
Laracon 2017 — краткий обзор и куча полезных ссылок
2017-08-04 в 16:03, admin, рубрики: algolia, api, composer, geocod.io, javascript, laravel, packagist, php, pusher, vue.js, webpack, ПрограммированиеЯ побывал первый раз на конференции Laracon лично и, должен сказать, я получил там весьма приятный опыт — возможно, даже более приятный, чем я ожидал. Конференция была хорошо организована и доклады были разнообразными, информативными и действенными. Первый день был посвящен техническим вопросам и в основном вращался вокруг Laravel. Второй день был разбавлен выступлениями на самые разные темы, довольно занимательными и заставляющими задуматься.
WebStorm 2017.2 – что нового в поддержке JavaScript, TypeScript, Angular и Sass и работе с ESLint, Karma и Mocha
2017-07-18 в 13:51, admin, рубрики: angular, AngularJS, html, IDE, javascript, jetbrains, React, TypeScript, webpack, webstorm, Блог компании JetBrains, Разработка веб-сайтовНа этой неделе вышло большое обновление WebStorm. В этом посте мы расскажем подробнее о том, какие улучшения ждут JavaScript-разработчиков в WebStorm 2017.2 и других IDE JetBrains версии 2017.2.
Вы можете прочитать подробнее о WebStorm 2017.2 и скачать его на нашем сайте.
Улучшения в поддержке JavaScript и TypeScript
Move symbol
Новый рефакторинг Move symbol переносит классы, глобальные функции и переменные из одного JavaScript или TypeScript файла в другой. IDE автоматически добавит экспорт и обновит ES6-импорты в файлах, где используется этот символ.
Чтобы вызвать этот рефакторинг, поставьте курсор на символ в ES6-модуле и нажмите F6.
Phoenix Framework – Webpack вместо Brunch, деплой с помощью Distillery и немного systemd
2017-06-25 в 22:02, admin, рубрики: deployment, Elixir, Elixir/Phoenix, erlang, npm, phoenix, phoenix framework, webpack, Разработка веб-сайтовЭта статья является попыткой автора свести воедино в виде небольшого руководства несколько тем, с которыми, так или иначе, сталкиваются практически все разработчики веб-приложений, а именно – работа со статическими файлами, конфигурациями и доставкой приложений на сервер. На момент написания этого текста, последней стабильной веткой Phoenix Framework была ветка 1.2.х.
Кому интересно, почему не Brunch и как совместить миграции с Distillery – прошу под кат.
Как создавать компактный и эффективный javascript используя RollupJS
2017-06-22 в 9:11, admin, рубрики: browserify, bundler, bundling, grunt, guide, gulp, javascript, rollup, webpack
Последнее время все чаще и чаще на ряду с другими сборщиками javascript стал встречать rollupJS. И даже стал использовать его для написания модулей, используемых в основном проекте компании. Поэтому хочу поделиться с вами переводом стать об этом компактном и удобном сборщике.
Стиль — авторский.
Узнаете, об использовании Rollup как более компактную и эффективную альтернативу webpack и Browserify для объединения файлов JavaScript.
В конце этого руководства мы сконфигурируем Rollup для:
Переход с ASP.NET на Angular2 с особенностями (личный опыт)
2017-06-14 в 9:37, admin, рубрики: .net, angular2, AngularJS, ASP, ASP.NET, webapi, webpackРазвернутая тема: разделение ASP.NET на Front-End (Angular) и Back-End (WebApi)
Особенности: корпоративная разработка (следовательно основной браузер — IE, веб сервер — IIS, среда — Windows); это частичный рефакторинг, а скорее редизайн веб части (имеется legacy код, ориентация на имеющийся UX);
Причины и цели: Цель — редизайн архитектуры веб составляющей (в текущей версии ASP.NET Forms + WCF), по причине невозможности/сложности решения возникших проблем и новых требований (полное обновление страниц после постбэка, повторная отправка формы, сложная навигация и связанные с этим проблемы с данными в формах).

Все описанное базируется на личном опыте (или, соответственно, его отсутствии — еще месяц назад о Node.js и Angular я не знал ничего кроме названия). Если краткое описание статьи заинтересовало — начнем.
Читать полностью »
Нативные EcmaScript модули: новые возможности и отличия от webpack
2017-06-07 в 7:06, admin, рубрики: babel, javascript, webpack, Блог компании Туту.ру, браузеры, будущее, Программирование, Разработка веб-сайтов, стандартыВ предыдущей статье Нативные ECMAScript модули — первый обзор я рассказал историю JavaScript модулей и текущее состояние дел реализации нативных EcmaScript модулей.
Сейчас доступны две реализации, которые мы попробуем сравнить с бандлерами модулей.
Почему не работает Tree Shaking и как с этим жить
2017-06-05 в 11:34, admin, рубрики: javascript, rollup, voximplant, webpack, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложений
В нашей предыдущей статье про голосовых ботов для Рокетбанка читатели возмутились, что в 2017 году примеры JavaScript для облака Voximplant написаны на ES5. У нас в облаке сильно модифицированный SpiderMonkey, специально обученный не течь и не падать. Тысячи одновременных звонков с параллельно выполняемым JavaScript как бы намекают, что нода – для нас не вариант. Тем не менее, никто не мешает использовать транспайлеры, компилировать ES2017/TypeScript/Elm/Whatever в старый добрый JavaScript и загружать результаты компиляции с помощью Continuous Integration. При таком раскладе возникает соблазн использовать все последние достижения из npmjs, собирая весь код в один ES5 бандл. И вот тут нас ждет засада: даже один метод из lodash дает на выходе бандл размером в полмегабайта. И не похоже, чтобы рекламируемый последние пару лет tree shaking работал.