LINUX.ORG.RU

JavaScript core костыли, велосипеды

 ,


2

2

В связи с выходом ES6, традиционный вопрос.

Подскажите набор библиотек, которые вы реально юзаете в продакшене, и которые реально улучшают написание кода для JavaScript.

Которые можно добавить в проект прямо сейчас, и джуниоры не сойдут с ума от вспыхнувших от перенапряжения мозгов (привет angular!).

Имеются в виду именно либы уровня language core (типа requirejs), а не прикладные библиотеки для рисования цветных графиков (chartjs).

Также интересно, какую практическую ацкую смесь полифилов вы сейчас используете, чтобы всё работало (с)(тм), в т.ч. для ES6/ES7

★★★★☆

lodash, moment; для node.js также async

static_lab ★★★★★
()

Для разработки на ES6 использую babeljs, им перед деплойментом компилирую в ES5. Потом, когда во всех браузера появится поддержка, можно будет просто выкинуть этап компиляции. Для промисов - bluebird, самая быстрая реализация промисов на текущий момент. Даже быстрее нативных.

Y ★★
()

http://lodash.com/

https://github.com/flatiron/winston (node.js)

http://momentjs.com/

На замену Angular можно http://knockoutjs.com/ и https://github.com/rniemeyer/knockout-amd-helpers

http://getuikit.com/ для интерфейса.

http://passportjs.org/ (node.js)

UPD: Bluebird тоже плюсую. Но сам пока от async не отказался.

UPD: Первый пост читал плохо, понаписал лишнего.

Black_Roland ★★★★
()
Последнее исправление: Black_Roland (всего исправлений: 2)

привет angular!

Я вообще начинающий погромист, меня даже на джуниора не возьмут, потому как стар, люблю angular. Что с ним не так?

Shadow ★★★★★
()

jspm: изкоробки es6/7 и полноценный import для пакетов из github/bower/npm.

VladimirMalyk ★★★★★
()
Ответ на: комментарий от invokercd

зачем angular есть же Ember

а зачем Ember, если есть Angular?

static_lab ★★★★★
()
Ответ на: комментарий от anonymous

VanillaJS. Крутая либа, очень быстрая и весит мало.

несомненно крутая, только апи кривое, но это лечится разными библиотеками расширений ;)

static_lab ★★★★★
()
Ответ на: комментарий от static_lab

lodash-то поприятнее конечно и побыстрее, но 50к вместо 15к тянуть неохота, если все, что надо в underscore есть. а про выигрыш в производительности — для большинства сайтов не так важно, 5 или 50мс выполняется та или иная функция, пока о больших данных речь не идет. lodash можно пересобрать через CLI только с используемыми кусками, но, как правило, лень морочиться. у sugar классный сборщик, но он прототипы мутирует и все такое.

Darwin
()
Ответ на: комментарий от Y

Все, кто пишет про bluebird, расскажите, пожалуйста, про преимущества промисов над async, например?

И то, и другое - решения для организации потока выполнения и централизованной обработки ошибок.
И то, и другое предоставляет базовые паттерны, такие как последовательное/параллельное выполнение набора функций, конвейер, последовательный/параллельный проход по коллекциям (фактически, reduce, но предлагается еще всякий сахар типа map/filter/...).
При этом, async еще предлагает такие вещи, как нечто похожее на циклы из процедурных языков (while/do_while/for со счетчиком), очередь задач и их «топологическая сортировка». На промисах это придется изобретать самому, либо подключать дополнительные библиотеки.

Я что-то упустил, или же это действительно больше вкусовщина и реальных преимуществ у промисов нет?

unikoid ★★★
()
Ответ на: комментарий от unikoid

Это стандарт и немалая часть либ использует именно bluebird. Ну и в целом получается красивее и компактнее.

Black_Roland ★★★★
()
Ответ на: комментарий от unikoid

больше вкусовщина

This. Это просто синтаксический сахар. Который, в отличии от async, является частью ES6.

Промисы ещё передать можно, что иногда может быть удобно.

Y ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.