
Eugene
06.06.2018
17:34:59

Дмитрий
06.06.2018
17:35:06
Мало того что два разных инстанса библиотеки притащит в бандл, так ещё и пытается переписать экспорт либы, который компилится в геттеры

Eugene
06.06.2018
17:35:10
еще и 30 звезд откуда-то.

Artyom
06.06.2018
17:35:15

Google

Nikolay
06.06.2018
17:35:32

Дмитрий
06.06.2018
17:36:03
Если про пробелы вокруг импортов, то они только мешают

Cenator
06.06.2018
17:36:13
не понял
пробелы внутри скобок это хоть и субъективно, но чаще видел что пишут с ними
второе - неконсистентные пробелы после //

Artyom
06.06.2018
17:36:37

Дмитрий
06.06.2018
17:36:48

Eugene
06.06.2018
17:36:57

Nikolay
06.06.2018
17:37:10

Cenator
06.06.2018
17:37:13

Дмитрий
06.06.2018
17:37:40
Код не выглядит лучше и не читается лучше, это просто пробелы ради пробелов

Nikolay
06.06.2018
17:38:15
Ну мне раньше казалось, что чем более код разрежен, тем лучше читать. Но на деле оказалось похуй (в данном кейсе).

Дмитрий
06.06.2018
17:38:24
Во во

Artyom
06.06.2018
17:38:42

Google

Дмитрий
06.06.2018
17:38:51
Это иллюзия

Artyom
06.06.2018
17:38:59
Практика ?♂️

Nikolay
06.06.2018
17:39:03

Cenator
06.06.2018
17:39:07

Дмитрий
06.06.2018
17:39:08
Разреженный код не читается лучше

Nikolay
06.06.2018
17:39:10
Да.
Крупный шрифт еще должен быть :))

Cenator
06.06.2018
17:39:57
использую 18рх, прекрасно себя чувствую

Artyom
06.06.2018
17:40:01

Nikolay
06.06.2018
17:40:15
Я же говорю все вопрос восприятия и привычки. Сугубо. Ну ладно, не всё. Есть объективно настолько говенный код, что глаза вытекают.
Вложенность больше двух уровней это вообще такое себе.
В условиях ли, в объектах ли, не важно.

Artyom
06.06.2018
17:40:52

Дмитрий
06.06.2018
17:41:25
Вложенность более двух уровней это рядовое явление
Просто функция в колбэке уже лишает вас одного

Nikolay
06.06.2018
17:41:52
Чем её меньше, тем проще, разве нет?

Дмитрий
06.06.2018
17:42:03
Мир не идеален

Nikolay
06.06.2018
17:42:15

Cenator
06.06.2018
17:42:18

Дмитрий
06.06.2018
17:43:13
Кол-что?
test(() => {
// минус один свободный уровень
})

Google

Nikolay
06.06.2018
17:43:40
Ну так-то любой скоуп это плюс уровень, да.

Дмитрий
06.06.2018
17:43:52
Ну в этом и вся фигня

Nikolay
06.06.2018
17:43:58
Декомпозиция рулит, я вот к чему.
И можно код делать максимально плоским (даже без хайповых async/await)

Дмитрий
06.06.2018
17:44:44
Кек
И что делать
Без асинхронности что ли?))

Artyom
06.06.2018
17:45:13
хайповых async/await...
хайповых...

Дмитрий
06.06.2018
17:45:24
Все остальные варианты добавят минимум уровень

Nikolay
06.06.2018
17:48:01
хайповых async/await...
Именно. В реальности-то промисами все вполне элегантно описывается, и асинкэвейт нахуй не сдался. Ну кроме тестов и каких-то конкретных кейсов (как в туториалах например) :)
Ну да, еще ветвления с ним делать удобнее, тут не поспоришь.

Cenator
06.06.2018
17:48:53
потом его в дурку забрали конечно

Artyom
06.06.2018
17:49:00

Abu
06.06.2018
17:49:34

Nikolay
06.06.2018
17:49:36

Abu
06.06.2018
17:50:14

Nikolay
06.06.2018
17:50:34
А зачем такое писать? Кто мешает ограничиться одним уровнем?
Это вообще анти-паттерн типа.

Google

Yaroslav
06.06.2018
17:52:06

Сергей
06.06.2018
18:00:32

Дмитрий
06.06.2018
18:02:07
Вполне объективно, они не являются отдельной сущностью плюс удлиняют строку
И так как в импортах нет деструктуризации, то в них нечего визуально отделять: одна пара скобок всегда остаётся максимум одной парой скобок

Сергей
06.06.2018
18:03:39

Дмитрий
06.06.2018
18:04:28
Цепь промисов банально удлиняет стектрейсы, в отличии от async await

Abu
06.06.2018
18:04:32
Не догоняю

Nikolay
06.06.2018
18:05:02
Можно в личку код, если вдруг NDA :)

Admin
ERROR: S client not available

Сергей
06.06.2018
18:05:49
Например?
Замыкание на значение из первого промиса

Nikolay
06.06.2018
18:06:09
Пробрасываешь его дальше и всё.

Abu
06.06.2018
18:06:19

Cenator
06.06.2018
18:06:20
кек

Дмитрий
06.06.2018
18:06:29

Сергей
06.06.2018
18:06:42

Nikolay
06.06.2018
18:06:43
Ну да, еще ветвления с ним делать удобнее, тут не поспоришь.

Дмитрий
06.06.2018
18:07:26
А нафиг обсуждать код в котором даже иф нет?) Что им делать, пропсы пробрасывать?

Nikolay
06.06.2018
18:07:58

Google

Дмитрий
06.06.2018
18:08:27
Без циклов, без ветвлений, яснопонятно))
Я такой бойлерплейт стараюсь минимизировать

Nikolay
06.06.2018
18:09:02
Циклы инкапсулированы в map/reduce.
switch/case обычно полиморфизмом заменен.
От if/else только осталось избавиться :D

Дмитрий
06.06.2018
18:10:00
Как ты в мап засунешь последовательные а не параллельные запросы?)

Сергей
06.06.2018
18:10:08

Nikolay
06.06.2018
18:12:32
Я же говорю, на примерах из туториалов, — где обычно строгая цепочка тасков, — все шикарно.

Сергей
06.06.2018
18:12:59

Nikolay
06.06.2018
18:13:09
Но вот в кейсах, где очень много распараллеленных задач — асинк-эвейт уже не так сияет.
Я не говорю, что он прям из пальца высосан. Просто у нас например такое — ну совсем редкость.

Сергей
06.06.2018
18:14:28
у нас нет

Nikolay
06.06.2018
18:15:24
А здесь-то в чем сложность?

Сергей
06.06.2018
18:15:26

Nikolay
06.06.2018
18:15:48
await Promise.all
Не все так просто. Мы уже с тобой это обусждали, если хистори откроешь. Я тебе даже линк на гитхаб давал :))

Сергей
06.06.2018
18:16:16
не надо хейтить асинки
всему свое применение