Oleg
02.05.2016
12:23:30
На ноде без async/await уже не обойтись. Кто писал линейный асинхронный код обратно к callback и promise hell не вернется
Константин
02.05.2016
12:31:06
а чем тогда лучше вариант ждать нативной поддержки и подключать babel, если можно сейчас использовать генераторы, тот же co использовать?
Oleg
02.05.2016
12:33:57
Это как раз мелочи. Корутины много где на генераторах построены. Но конструкцию async/await можно и в c# увидеть и в scala и в python
Константин
02.05.2016
12:52:22
а для продакшена делаете билд бабелем или подключаете babel-register?
Google
Oleg
02.05.2016
13:02:40
Делаем либу серверную и к ней запускатор в es5
Vladimir
02.05.2016
13:53:26
Генераторы не работают с классами, т е нельзя красиво сделать асинхронный метод класса, завёрнутый в co или подобное
Константин
02.05.2016
13:56:37
почему не работают? метод может быть генератором
Vladimir
02.05.2016
14:39:50
да, но нужно завернуть отдельно, или в конструкторе или прямо на прототипе
Константин
02.05.2016
15:26:42
The V8 team is already working to bring upcoming features such as async /await keywords http://v8project.blogspot.com.by/2016/04/es6-es7-and-beyond.html
Kanat
02.05.2016
17:07:37
Обзор популярных библиотек и фреймворков для JavaScript
#javascript
Для быстрого решения большинства нетривиальных задач в JavaScript, как и в других языка, есть множество полезных библиотек и фреймворков. Библиотеки помогают быстро реализовывать отдельные функции в приложении, а фреймворки являются надежным фундаментом для построения приложений на их основе.
Ссылка на пост
https://vk.com/wall-54530371_68384
Paul
02.05.2016
19:44:31
import не нужен :)
Нужен, когда дейсвительно нужен. Из-за того что все экспортируемые не-default свойства - это по сути геттеры, которые могут менять байндинги.
Например, если контроллеры используют модуль, который является обвязкой над драйвером базы данный и подключение может быть ленивым или меняться в рантайме, при этом этот модуль может импортировать свойства некоторых контроллеров (и без этого бывает не обойтись) - модель с геттерами позволяет иметь циклические засысимости в таких случаях
Viacheslav
02.05.2016
19:51:23
как связаны import и подключение к бд?
Paul
02.05.2016
19:52:41
Да никак, это пример, в котором бывает нужно переменную экспорировать раньше, чем у нее будет байндинг на какое-то значение
Denis
02.05.2016
19:53:35
http://geekforbrains.com/post/after-a-year-of-nodejs-in-production
Paul
02.05.2016
19:53:42
Это можно делать и без import разными способами, но с import/export это родная фича, с которой все начинает смотреться стройно
Viacheslav
02.05.2016
19:54:49
циклические зависимости это само по себе странно
зачастую это говорит о проблеме
Google
Paul
02.05.2016
19:55:33
Да, но вот в некоторых случаях без них обойтись нельзя
Viacheslav
02.05.2016
19:55:43
очень в редких
обычно третье звено может помочь
например, нормальный di
Vladimir
02.05.2016
20:09:59
если использовать di, то от импортов можно избавиться вообще
Viacheslav
02.05.2016
20:27:03
в JS да
в ts все равно импортировать интерфейсы нужно
Denis
02.05.2016
20:27:57
Что-то я не верю в TS
Не видел ещё читабельного кода на TS
Oleg
02.05.2016
20:30:03
Denis
02.05.2016
20:30:50
Я про неё и говорю
ES6 => меньше кода
TS => больше кода
Viacheslav
02.05.2016
20:32:02
меньше кода != читабельнее
Denis
02.05.2016
20:32:26
читабельность != язык
Viacheslav
02.05.2016
20:32:30
тебе тогда не в Relay :)
Denis
02.05.2016
20:32:40
почему?
Viacheslav
02.05.2016
20:32:51
потому что там кода дохрена
Denis
02.05.2016
20:32:57
В итоге кода меньше
Хотя по честному, могли бы ещё меньше
Google
Oleg
02.05.2016
20:33:12
Ну знаешь, когда ты видишь что функция принимает и отдаёт, когда компилятор не даёт сделать тебе ошибку внутри, это много стоит в больших проектах
Viacheslav
02.05.2016
20:33:28
+1
Denis
02.05.2016
20:33:48
Но у меня ожидания, что будет как с Flux = текущий Relay лишь первая итерация. Уже посматриваю на Apollo.
Viacheslav
02.05.2016
20:33:54
за пару месяцев я уже несколько раз поймал багу на этапе компиляции
Oleg
02.05.2016
20:36:44
Relay это мода. Не станет он мейнстримом потому что сложен
Viacheslav
02.05.2016
20:37:11
скорее всего да
но GraphQL должен
Dmitrii
02.05.2016
20:37:58
кстати.. graphQL database еще никто не написал?
Vladimir
02.05.2016
20:38:10
Последнее время пишу исключительно с использованием flow, никогда не чувствовал себя лучше
Viacheslav
02.05.2016
20:38:13
коннекты скорее всего ест
Dmitrii
02.05.2016
20:38:30
я обычно к postgres прикручиваю
Viacheslav
02.05.2016
20:38:31
к какой-нибудь mongodb
Oleg
02.05.2016
20:38:40
Ну мы обсуждали что GraphQL это xpath для json. То есть в общем-то догоняем стандарты двадцатилетние
Dmitrii
02.05.2016
20:38:48
но если можно было бы сразу graphql данные вставлять было бы замечательно
Viacheslav
02.05.2016
20:39:16
сложно представить
Denis
02.05.2016
20:39:56
https://github.com/solidsnack/GraphpostgresQL
Dmitrii
02.05.2016
20:40:09
ага. я эту видел
но это всеравно sql
Denis
02.05.2016
20:40:40
Reindex.io под капотом держит MongoDB
Viacheslav
02.05.2016
20:40:42
я не люблю такое "чтобы само"
Google
Dmitrii
02.05.2016
20:40:44
мне не горит, просто интересно :)
Viacheslav
02.05.2016
20:41:11
поэтому даже не тогал reindex
Denis
02.05.2016
20:44:29
Да нормальные пацаны
Viacheslav
02.05.2016
20:44:43
пацанты то может быть и норм
Denis
02.05.2016
20:49:01
Мне в целом нравится тенденция, что сейчас всё автоматизируется в разработке
Декларативность привела к тому, что меньше пишешь, больше думаешь
Плюс масштабируемость таких паттернов высокая
Vladimir
02.05.2016
20:50:04
Но сложнее читать и понимать, что происходит
Если речь о GraphQL, мне кажется большинству он не нужен
Denis
02.05.2016
20:52:07
Наоборот
Я помню jQuery-километры кода
Паш, ты ведь тоже помнишь? ;)
Сейчас с React всё крайне удобно читается и понимается
Vladimir
02.05.2016
20:53:24
Ну это проблему решил реакт, тут не спорю. Но доступ к данным - более деликатная тема
Denis
02.05.2016
20:53:50
Сопровождение на порядки проще, но требует уже куда более фундаментальных архитектурных принципов
Vladimir
02.05.2016
20:54:50
Ну вот например у тебя реляционная СУБД - пробрасывать запросы с клиента никто никогда не мешал
Но проблема с безопасностью
Denis
02.05.2016
20:55:18
SQL вообще был языком для менеджеров и далёких от IT людей :)
Vladimir
02.05.2016
20:55:28
Если заменить SQL на GraphQL, приннципиально ничего не изменится
Denis
02.05.2016
20:55:29
SELECT * FROM users
Google
Denis
02.05.2016
20:55:52
Это было в англоязычном мире, у нас бы это выглядело:
ВЫБРАТЬ * ИЗ пользователей
1С
Большое приложение React/Redux в итоге состоит из набора однотипных операций
Command / Query
Vladimir
02.05.2016
20:57:34
Ну в этом нет ничего декларативного, наоборот - простая архитектура за счет кучи бойлерплейта. И ничего плохого в этом нет
Denis
02.05.2016
20:57:52
Сообщество пока не решило проблему с этим, но движение в этом направление как раз мы и видим)
По сути React = это конфигурция
(реальный bottleneck = анимация)
Vladimir
02.05.2016
21:00:01
фронтэнд - это просто)
Denis
02.05.2016
21:00:23
ахах
Как два лендинга сверстать
Vladimir
02.05.2016
21:01:31
именно. можно долго обсуждать как и что круче, и быстрее, и правильнее, но реальность проста - можно и на джквери на колбасить, и половина веба так и работает
Denis
02.05.2016
21:04:05
Так и есть, вопрос затрат. Большой проект на jQuery и большой проект на React = два разных бюджета на сопровождение. Но если бюджеты в ИТ понятие гибкое, то время часто критично и в этом плане введение и взаимозаменяемость разработчиков в React просто космос.)
Vladimir
02.05.2016
21:06:04
Да не вопрос, я тоже считаю что лучше реакта ничего нет. Но все таки чат по бэкэнду, сложности фронтенда не идут с бэкэндам ни в какое сравнение
Фронтэнд в крайнем случае можно целиком выкинуть и переписать)
Denis
02.05.2016
21:07:17
:)))
Viacheslav
02.05.2016
21:07:23
лол
бекенд фигня