@react_js
React — русскоговорящее сообщество

Обсуждаем React.js и экосистему. См. также: @reactnative_ru, @apollo_ru, @protonnative_ru, @nodejs_ru, @js_ru, @uiux_ru Вакансии и поиск работы: @javascript_jobs Правила: http://bit.ly/our_etiquette Sponsored with ❤️ by www.axept.co

5822 members

Архив канала @react_js 22 мая 2016 г.

06:29:43 ДП
User 110741963
Кто подскажет как сделать ленивую загрузку img на реакте ?
06:40:06 ДП
User 111624951
Каким образом ленивая загрузка связана с реактом?
06:55:21 ДП
User 110771442
User 162236709
что поставить на новый сервер: Windows 10 Enterprise, Windows Server 2016 или Windows Server 2016 Nano?
Gentoo
07:13:21 ДП
User 64005178
User 162236709
что поставить на новый сервер: Windows 10 Enterprise, Windows Server 2016 или Windows Server 2016 Nano?
какие цели?
07:13:58 ДП
User 64005178
User 110771442
Gentoo
хочешь виндузятнику все желание с линухом работать отбить? :D
07:15:12 ДП
User 185980313
тогда windows xp, проверенный временем
10:21:27 ДП
User 185980313
хорошая статья о сранвении redux и relay подхода - https://www.reindex.io/blog/redux-and-relay/ , конечно мутация сложная + Relay.Route.
10:22:05 ДП
User 185980313
И по этому вопрос, кто нибудь пробовал использовать http://www.apollostack.com/ ? Он вроде как замена relay и позволяет в более простом виде взаидействовать с GraphQL
10:44:33 ДП
User 597730
User 164870167
Спасибо
Я тебе сразу облегчу жизнь. В среде реакта принято хвалить подход redux, но реально для новичка это крышеснос - столько всего приходится узнавать, экшны, редюсеры, иммутабельные данные. Плюс, в сторе у тебя поначалу будет полный бардак, потому что хз как описывать структуру plain object - в отдельном текстовом файлике ? Чтобы не разочароваться все всем этом раньше времени, я посоветую обратить внимание вот на сей способ хранения стейта приложения: https://github.com/mobxjs/mobx

Там, конечно, декораторы и надо подключать плагин к бабелю, но голову он разгружает очень хорошо. Плюс появляются концепции моделей, где можно нормально описывать данные. Плюс производительность выше, чем у redux. Ну и вообще, "сделано для людей".
github.com/mobxjs/mobx
Simple, scalable state management. Contribute to mobxjs/mobx development by creating an account on GitHub.
10:47:53 ДП
User 61730194
имеется сложный проект на mobx в открытом доступе?
10:49:06 ДП
User 597730
Нет, это относительно новая технология.
10:49:53 ДП
User 61730194
жаль, вчера интернет лопатил, так же ничего не нашел
10:50:01 ДП
User 185980313
в mobx получается много сторов? И что заменяет Providers или как вызваются и прокидываются сторы вниз?
10:50:22 ДП
User 597730
Автор говорит, что у него оно работает в продакшне на https://www.mendix.com
mendix.com
Mendix is the fastest & easiest low-code platform used by businesses to develop mobile & web apps at scale. Visit to learn more & try the platform for free!
10:50:37 ДП
User 61730194
есть тулзы для прокидования сторов
10:51:22 ДП
User 61730194
либо вручную
http://stackoverflow.com/questions/35850871/how-to-connect-state-to-props-with-mobx-js-observer-when-use-es6-class
stackoverflow.com/questions/35850871/how-to-connect-state-to-props-with-mobx-js-observer-when-use-es6-class
Let's take a class like this in an app with React and React Router. @observer class Module1 extends React.Component { constructor (props) { super(props); //... } componentWillMount...
10:51:59 ДП
User 61730194
2 ответ, все достаточно просто
10:52:54 ДП
User 61730194
@medar исходников нет?
10:53:18 ДП
User 597730
Штатной нет, есть вот такое: https://github.com/amsb/mobx-reactor с диспатчером и миддварями. А можно по-простому через контекст, как здесь описано: https://medium.com/@foxhound87/state-management-hydration-with-mobx-we-must-react-ep-05-1922a72453c6
github.com/amsb/mobx-reactor
mobx-reactor - Connect MobX data stores to functional stateless React components with async actions and unidirectional data flow.
10:53:37 ДП
User 597730
Автор говорит, что после 2.2 сделает штатное решение.
10:54:57 ДП
User 185980313
Понятно, написать самому Provider, когда примерно выход 2.2? я как слышу, там много всего под реакт появится
10:55:52 ДП
User 597730
В mobx может быть один стор. Просто стор можно делить на несколько сабсторов, каждый под свою задачу, поэтому в доке про несколько и написано, видимо.
10:56:12 ДП
User 597730
2.2 вот-вот должен быть, на днях
10:56:52 ДП
User 56924675
@medar а сколько времени может занять “вкуривание” mobx и переписывание небольшого приложение работающего на redux?
10:58:23 ДП
User 597730
не знаю, я взял айпад с докой mobx на беговую дорожку и через час вышел с кружащейся головой "как я вообще жил до этого". Хотя я не фронтэндер, и в js вообще говоря, слаб.
10:59:13 ДП
User 56924675
Ну ок, попробуем на досуге)
11:00:32 ДП
User 597730
Мне кажется, его ЦА - это как раз небольшие приложения. Большие, которые пилятся командой, наверное, можно на redux - там ты все контролируешь, точнее, вынужден контролировать, хочешь ты или не хочешь ) . А тут половину работы за тебя делает черный ящик.
11:00:38 ДП
User 185980313
подожду 2.2 и тоже наверное посмотрю подробнее на него)
11:01:09 ДП
User 155082981
чем лучше того же redux ?
11:01:54 ДП
User 185980313
скоростью и меньшим количеством кода
11:04:42 ДП
User 597730
Я недавно услышал хорошую формулировку - "когнитивная нагрузка". ) От mobx она меньше.
11:06:13 ДП
User 185980313
вот тут спорно как то, редакс пока кажется немного проще )
11:08:19 ДП
User 185980313
и тем, что в редаксе тебе говорят как лучше всего по их мнению огранизовтаь, а в MobX только как использовать )
11:47:59 ДП
User 192559518
Мы приглашаем вас на следующую встречу любитей пива и холиваров — BeerJS Moscow!
26 мая, 20:00
Подробности по ссылке http://www.meetup.com/BeerJS-Moscow/events/231310923/
meetup.com/BeerJS-Moscow/events/231310923
Unfortunately, everyone's favorite MoscowJS Meet-up will not happen this month.But don't despair. We're welcome you to the next meeting of beer lovers and holy warriors! Free entrance, but each pays f
12:28:18 ПП
User 155082981
https://new.vk.com/jsraccoon?w=wall-97408246_10778
vk.com/wall-97408246_10778
Недавно команда Meteor-а выпустила такую крутую штуку, как Apollo. С помощью Apollo вы можете легко управлять потоками данных между сервером и клиентом. Подробнее о Apollo: http://www.apollostack.com/ Почему стоит использовать Apollo вместе с Redux в React описано тут https://medium.com/apollo-stack/apollo-client-graphql-with-react-and-redux-49b35d0f2641#.9l5lafwfb Любителям Angular можно посмотреть на интеграцию Apollo и Angular 2 вот тут: http://docs.apollostack.com/apollo-client/angular2.html
04:38:53 ПП
User 164870167
User 597730
Я тебе сразу облегчу жизнь. В среде реакта принято хвалить подход redux, но реально для новичка это крышеснос - столько всего приходится узнавать, экшны, редюсеры, иммутабельные данные. Плюс, в сторе у тебя поначалу будет полный бардак, потому что хз как описывать структуру plain object - в отдельном текстовом файлике ? Чтобы не разочароваться все всем этом раньше времени, я посоветую обратить внимание вот на сей способ хранения стейта приложения: https://github.com/mobxjs/mobx

Там, конечно, декораторы и надо подключать плагин к бабелю, но голову он разгружает очень хорошо. Плюс появляются концепции моделей, где можно нормально описывать данные. Плюс производительность выше, чем у redux. Ну и вообще, "сделано для людей".
github.com/mobxjs/mobx
Simple, scalable state management. Contribute to mobxjs/mobx development by creating an account on GitHub.
Спасибо, обязательно посмотрю. Но ещё ведь вопрос в том, чтоб остальные девы в тиме могли пользоваться этой технологией, так как редко ты сам выбираешь что использовать на проекте, а т. к. редакс используется практически везде, то знать его ящитаю мастхев.
05:28:31 ПП
User 89478045
Разве mobx можно использовать в проде? Не рано ещё?
05:35:11 ПП
User 12334241
User 89478045
Разве mobx можно использовать в проде? Не рано ещё?
Ну а что еще использовать, редакс теперь мейнстрим, а значит не круто :-D
05:37:21 ПП
User 35172279
User 89478045
Разве mobx можно использовать в проде? Не рано ещё?
А разве можно использовать твой код в проде? его ведь нет еще ни у кого другого в проде
05:38:07 ПП
User 1340580
User 35172279
А разве можно использовать твой код в проде? его ведь нет еще ни у кого другого в проде
05:41:16 ПП
User 35172279
mobx можно не использовать не потому что он новый, а потому что это старые грабли
05:55:01 ПП
User 111624951
Ага, лучше будем использовать новые грабли.
05:55:32 ПП
User 12334241
User 35172279
mobx можно не использовать не потому что он новый, а потому что это старые грабли
Удваиваю
06:03:00 ПП
User 101934369
А в чём грабли, если не секрет? В том что FRP - это ограниченная абстракция?
06:12:13 ПП
User 35172279
В старых добрых обзерверах и копьютедах. С ростом проекта будет расти кол-во кроссзависимых обзерверов, обновления будут выстреливать в разные стороны как феерверк, что усложняет отладку и приводит к неочевыдным багам или к циклическим зависимостям, которые сложно распутать или найти точку прекращения распространения обновлений
06:19:06 ПП
User 101934369
User 35172279
В старых добрых обзерверах и копьютедах. С ростом проекта будет расти кол-во кроссзависимых обзерверов, обновления будут выстреливать в разные стороны как феерверк, что усложняет отладку и приводит к неочевыдным багам или к циклическим зависимостям, которые сложно распутать или найти точку прекращения распространения обновлений
То есть проблема в циклических зависимостях?
Забавно, изначально React/Flux в Фейсбуке придумали, чтобы избежать циклических зависимостей (при рендеринге), но теперь они возвращаются :)
06:24:15 ПП
User 35172279
Верно, реакт позиционировался чуть ли не на всех первоначальных презентациях как альтернатива mvc/mvvm где клубок кроссзависимостей запутывается с огромной скоростью, в том числе и благодаря обзерверам во многих фрэймворках. А теперь mobx предлагает тоже самое только с реактом в качесве рендера, это забавно.
Но с момента выхода реакта выросло целое поколение разработчиков, которые не сталкивались с этой проблемой mvc/mvvm и они с рвением кинулись к "новому" подходу :)
06:43:43 ПП
User 4627228
User 35172279
Верно, реакт позиционировался чуть ли не на всех первоначальных презентациях как альтернатива mvc/mvvm где клубок кроссзависимостей запутывается с огромной скоростью, в том числе и благодаря обзерверам во многих фрэймворках. А теперь mobx предлагает тоже самое только с реактом в качесве рендера, это забавно.
Но с момента выхода реакта выросло целое поколение разработчиков, которые не сталкивались с этой проблемой mvc/mvvm и они с рвением кинулись к "новому" подходу :)
Слова человека, который не один десяток или сотню часов убил, развлекаясь с Knockout.js :) На самом деле да. MobX больше похож на хайп. Так принято стало - в начале весны пытаться "убивать" предыдущий Flux. Но сейчас на самом деле куда более перспективным смотрится Relay, который опять сводит императивную работу с динамикой в статические декларацию с lifecycle, как это однажды сделали с UI в React.
06:44:16 ПП
User 12334241
User 35172279
В старых добрых обзерверах и копьютедах. С ростом проекта будет расти кол-во кроссзависимых обзерверов, обновления будут выстреливать в разные стороны как феерверк, что усложняет отладку и приводит к неочевыдным багам или к циклическим зависимостям, которые сложно распутать или найти точку прекращения распространения обновлений
Я в свое время этого в нокауте наелся
06:45:46 ПП
User 12334241
User 4627228
Слова человека, который не один десяток или сотню часов убил, развлекаясь с Knockout.js :) На самом деле да. MobX больше похож на хайп. Так принято стало - в начале весны пытаться "убивать" предыдущий Flux. Но сейчас на самом деле куда более перспективным смотрится Relay, который опять сводит императивную работу с динамикой в статические декларацию с lifecycle, как это однажды сделали с UI в React.
С рилэем проблема, что он изоморфизм не умеет
06:45:54 ПП
User 4627228
С учётом того, что сейчас Relay уже можно для Server-Side Rendering использовать (вчера скидывал пример), благодаря тому, что они ушли от синглтона в стор с Relay.Renderer
06:46:13 ПП
User 4627228
Нет этой проблемы уже)
06:46:34 ПП
User 12334241
User 4627228
Нет этой проблемы уже)
Опа, надо глянуть
06:46:40 ПП
User 4627228
Опять вчера чатик не читали?;)
06:46:40 ПП
User 4627228
Хорошо, когда Relay изоморфный) https://github.com/denvned/isomorphic-relay
github.com/denvned/isomorphic-relay
isomorphic-relay - Adds server side rendering support to React Relay
06:47:00 ПП
User 35172279
Да, Relay выглядит очень крутым. Или хотябы редакс+аполло
06:47:04 ПП
User 12334241
Старая версия 2gis.ru была на нокауте. Это была адуха
2gis.ru
Подробная карта городов России: поиск по адресу, телефоны, отзывы, фото, часы работы фирм и удобный поиск проезда.
06:47:28 ПП
User 4627228
Apollo выглядит пока как кусок 💩
06:48:10 ПП
User 4627228
User 12334241
Старая версия 2gis.ru была на нокауте. Это была адуха
2gis.ru
Подробная карта городов России: поиск по адресу, телефоны, отзывы, фото, часы работы фирм и удобный поиск проезда.
Да, я помню на DevConf 2013 они жаловались на Knockout:)
06:50:46 ПП
User 12334241
После этого опыта я очень скептически отношусь к обзерверами с компьютед проперти и js-логике в html
06:51:04 ПП
User 12334241
Я поэтому даже ангуляр не пробовал никогда
06:52:36 ПП
User 191299276
ангуляр 2 лучше?
06:52:51 ПП
User 12334241
User 191299276
ангуляр 2 лучше?
Не смотрел таже
06:53:06 ПП
User 12334241
Есть ощущение, что ангуляр стагнирует
06:53:24 ПП
User 12334241
По работе с ним не приходилось сталкиваться просто пока
06:53:32 ПП
User 164870167
2 лучше, чем 1
06:53:35 ПП
User 12334241
А по фану желания не возникает
06:53:50 ПП
User 164870167
Работаю с 1 достаточно много - настоящий адец
06:54:16 ПП
User 164870167
Куча всяких неочевидных вещей, типо трансклюдед скоупов и т.д.
06:54:40 ПП
User 12334241
Просто видно, что все двигается в сторону реакта и реактоподобных либ
06:54:47 ПП
User 164870167
Короче, не зря начали второй делать)
06:55:28 ПП
User 185980313
User 4627228
Apollo выглядит пока как кусок 💩
Почему? на первый взгляд такого не заметил
06:57:09 ПП
User 4627228
User 164870167
Короче, не зря начали второй делать)
Да, надо же как-то попытаться бренд удержать, да и дать людям надежду :)
07:00:52 ПП
User 111624951
User 4627228
Да, надо же как-то попытаться бренд удержать, да и дать людям надежду :)
Надежду на что? Любой адекватный человек понимает, что между 1 и 2 версиями нет ничего общего.
07:02:00 ПП
User 12334241
User 111624951
Надежду на что? Любой адекватный человек понимает, что между 1 и 2 версиями нет ничего общего.
Называется-то одинаково!
07:02:22 ПП
User 185980313
User 111624951
Надежду на что? Любой адекватный человек понимает, что между 1 и 2 версиями нет ничего общего.
надежду, что ангуляр как бренд будет жить)
07:02:26 ПП
User 192559518
User 185980313
Почему? на первый взгляд такого не заметил
+1 к вопросу, почему Apollo говно?
07:02:37 ПП
User 192559518
посмотрел быстро, вроде норм
07:02:41 ПП
User 111624951
User 12334241
Называется-то одинаково!
Ага, потому все вакансии по ангуляру легонько так апнули версию. Вот радость то.
07:02:56 ПП
User 192559518
единственное, доверие к команде метеора нет
07:03:13 ПП
User 192559518
@DenisIzmaylov ^
07:03:32 ПП
User 185980313
User 192559518
посмотрел быстро, вроде норм
да и позволяет в привычном стиле писать с графкл, а то relay сильно специфичный
07:05:14 ПП
User 185980313
и метеор не заставляет тащить в проект, что тоже норм
07:05:53 ПП
User 74329021
User 35172279
Верно, реакт позиционировался чуть ли не на всех первоначальных презентациях как альтернатива mvc/mvvm где клубок кроссзависимостей запутывается с огромной скоростью, в том числе и благодаря обзерверам во многих фрэймворках. А теперь mobx предлагает тоже самое только с реактом в качесве рендера, это забавно.
Но с момента выхода реакта выросло целое поколение разработчиков, которые не сталкивались с этой проблемой mvc/mvvm и они с рвением кинулись к "новому" подходу :)
Ура, наконец кто-то это озвучил <3
07:05:57 ПП
User 12334241
User 185980313
и метеор не заставляет тащить в проект, что тоже норм
А метеор сам по себе жив еще?
07:06:42 ПП
User 185980313
User 12334241
А метеор сам по себе жив еще?
наверное да, нет нет, есть новости про него и вот, команда жива и переключилась на gграфкл пока что )
07:06:54 ПП
User 74329021
User 191299276
ангуляр 2 лучше?
NO, в чём-то стал проще и лучше, в чём-то сложнее и запутанней, но в целом всё такой же вынос мозга и потенциальная каша
07:07:34 ПП
User 74329021
User 12334241
А метеор сам по себе жив еще?
Живее всех живых, а что ему, как ленивая обёртка для клиента он просто идеален
07:10:04 ПП
User 12334241
User 74329021
Живее всех живых, а что ему, как ленивая обёртка для клиента он просто идеален
Ну в самом начале они пытались построить экосистему отдельную от нпмовской, сразу было понятно, что это фэйл, потому и спрашиваю
07:10:33 ПП
User 185980313
с apollo вернулись в npm
07:11:37 ПП
User 74329021
User 12334241
Ну в самом начале они пытались построить экосистему отдельную от нпмовской, сразу было понятно, что это фэйл, потому и спрашиваю
А у них кстати вполне себе получилось, называется atmosphere и вполне удобно, просто там только пакеты для метеора конкретно (зато npm не засерается узкоспециализированными пакетами :))

Но начиная с версии 1.3 там можно и простые пакеты легко импортить, так что это не важно
07:12:14 ПП
User 191299276
вам не кажется что бекенд на жс не есть лучшая идея?
07:13:08 ПП
User 74329021
Но точно не худшая :) А что не так с этим?
07:13:16 ПП
User 185980313
User 191299276
вам не кажется что бекенд на жс не есть лучшая идея?
а на чем писать?
07:13:46 ПП
User 191299276
питон руби го хаскель эликсир
07:13:47 ПП
User 164870167
User 185980313
а на чем писать?
Джава/.NET/Ruby/PHP
07:13:58 ПП
User 191299276
джава си шарп пхп
07:14:01 ПП
User 89478045
User 191299276
вам не кажется что бекенд на жс не есть лучшая идея?
Готовь пукан
07:14:32 ПП
User 185980313
User 191299276
питон руби го хаскель эликсир
ладно все остальное, но хаскель?)
07:14:50 ПП
User 191299276
скала, С++, кложура
07:14:53 ПП
User 74329021
User 164870167
Джава/.NET/Ruby/PHP
Ой ну, а лет пять назад все писали, мол “Вам не кажется, что писать на php не самая лучшая идея?”, а теперь вот как пример ставят :)
07:15:10 ПП
User 12334241
Питон и руби просто медленные, на обработку каждого запроса нужен отдельный тред
07:15:28 ПП
User 89478045
User 12334241
Питон и руби просто медленные, на обработку каждого запроса нужен отдельный тред
JRuby?
07:15:34 ПП
User 164870167
User 74329021
Ой ну, а лет пять назад все писали, мол “Вам не кажется, что писать на php не самая лучшая идея?”, а теперь вот как пример ставят :)
Многие до сих пор считают, что пых - это зашквар
07:15:43 ПП
User 191299276
медленные для чего?
07:15:43 ПП
User 185980313
+ если выбирать питон и руби, то не будет принципиального улучшения
07:16:09 ПП
User 12334241
User 185980313
+ если выбирать питон и руби, то не будет принципиального улучшения
Будет принципиальное ухудшение
07:16:10 ПП
User 191299276
зато на них быстро писать
07:16:37 ПП
User 74329021
Бэкенд на JS может быть не основным бекендом так-то, учитывайте

У нас бэк на .NET, а нода в виде третьего слоя, на котором фронты сами пишут красивый API не дёргая бэкендщиков - красота и рай
07:17:22 ПП
User 12334241
User 89478045
JRuby?
Не пробовал, сейчас попробую погуглить бенчмарки
07:17:24 ПП
User 119754639
Бэкенд - бэкенду рознь.
07:17:26 ПП
User 191299276
но ноде можно какие то отдельные штуки писать
07:17:26 ПП
User 164870167
Ну да, чому бы и не написать какой-то кусок на ноде допустим
07:18:27 ПП
User 12334241
User 191299276
скала, С++, кложура
В кожуре нет статической типизации, не понято в чем профит
07:18:50 ПП
User 164870167
На С++ ещё кто-то пишет?
07:19:31 ПП
User 101934369
User 12334241
В кожуре нет статической типизации, не понято в чем профит
Ну как сказать.
Если расставить тайпхинты, то компилятор делает вывод типов и генерит байткод без рефлексии, по быстродействию равный джавовскому.
07:19:34 ПП
User 185980313
User 191299276
питон руби го хаскель эликсир
го - тоже не лучший выбор, только если разбить на микросервисы
07:19:47 ПП
User 119754639
Давайте может не будем изображать снобов, если уж фб в своем начале жил на php потом с hhvm и т.п., то мы тут будто бэкенд интерфейса который прям к мозгу подключается собрались писать.
07:20:12 ПП
User 101934369
User 89478045
JRuby?
А вот JRuby очень тормозной, там полиморфизм сделан через dynamic call site’ы
07:21:48 ПП
User 597730
"Забавно, изначально React/Flux в Фейсбуке придумали, чтобы избежать циклических зависимостей (при рендеринге), но теперь они возвращаются"
Но на mobx можно следовать методологии flux, т.е. диспатчить экшны через миддвари в рамках одностороннего потока данных, как это сделано, например, у mobx-reactor. Я не писал больших js-приложений, возможно, где-то там проблема закольцованных зависимостей может попортить жизнь, но разве это не решается на этапе проектирования системы ?
07:22:10 ПП
User 12334241
Начал гуглить про jruby, из свежего нашлось первым это :) https://blog.jaredfriedman.com/2015/09/15/why-i-wouldnt-use-rails-for-a-new-company/
blog.jaredfriedman.com/2015/09/15/why-i-wouldnt-use-rails-for-a-new-company
We built Scribd into the #3 largest rails site by traffic and it worked for us, but these days I see a lot of new companies using rails and it feels like a mistake. I started using rails in 2006 ri…
07:23:25 ПП
User 12334241
User 597730
"Забавно, изначально React/Flux в Фейсбуке придумали, чтобы избежать циклических зависимостей (при рендеринге), но теперь они возвращаются"
Но на mobx можно следовать методологии flux, т.е. диспатчить экшны через миддвари в рамках одностороннего потока данных, как это сделано, например, у mobx-reactor. Я не писал больших js-приложений, возможно, где-то там проблема закольцованных зависимостей может попортить жизнь, но разве это не решается на этапе проектирования системы ?
Если есть большое приложение и там архитектурно что то плохое можно сделать — это гарантированно будет сделано. Вопрос времени
07:24:33 ПП
User 12334241
User 101934369
Ну как сказать.
Если расставить тайпхинты, то компилятор делает вывод типов и генерит байткод без рефлексии, по быстродействию равный джавовскому.
Я не про то во что это скомпилится, а про то ругнется ли компилятор когда я опечатался или написал ересь
07:26:00 ПП
User 101934369
User 12334241
Я не про то во что это скомпилится, а про то ругнется ли компилятор когда я опечатался или написал ересь
А для этого есть опциональная система типов (core.typed)
Правда ничего за неё сказать не могу ибо не использовал
07:27:05 ПП
User 12334241
User 101934369
А для этого есть опциональная система типов (core.typed)
Правда ничего за неё сказать не могу ибо не использовал
Ну вот, а я на опыте работу с большими проектами на js понял, что без типов жить тяжело
07:27:36 ПП
User 12334241
И хочется, чтоб компилятор сразу ругался на ересь
07:28:38 ПП
User 12334241
А есть здесь люди работающие с flow? Плюсы, минусы, подводные камни?
07:28:47 ПП
User 191299276
Хотя, наверное если знаешь js, то нода будет хорошим выбором
07:30:13 ПП
User 1294634
Flux Альтернатива не MVC, а архитектуре модели на обзерв. Flux предлагает cqrs
07:30:13 ПП
User 1294634
Верно, реакт позиционировался чуть ли не на всех первоначальных презентациях как альтернатива mvc/mvvm где клубок кроссзависимостей запутывается с огромной скоростью, в том числе и благодаря обзерверам во многих фрэймворках. А теперь mobx предлагает тоже самое только с реактом в качесве рендера, это забавно.
Но с момента выхода реакта выросло целое поколение разработчиков, которые не сталкивались с этой проблемой mvc/mvvm и они с рвением кинулись к "новому" подходу :)
07:30:14 ПП
User 12334241
User 191299276
Хотя, наверное если знаешь js, то нода будет хорошим выбором
Использовать то, что знаешь в условиях ограниченного времени — всегда хороший выбор в краткосрочной перспективе
07:39:55 ПП
User 141822776
flow Владимир горячо реконмендовал, вот его презентация с последнего nodejs митапа http://vkurchatkin.github.io/talks/flowscript/#1
07:45:39 ПП
User 12334241
User 141822776
flow Владимир горячо реконмендовал, вот его презентация с последнего nodejs митапа http://vkurchatkin.github.io/talks/flowscript/#1
Спасибо!
07:54:00 ПП
User 39759851
а почему не тайпскрипт
08:07:05 ПП
User 119754639
Потому, что TS это транспилер + расширение языка от MS, а Flow - проверка типов (Flow is a static type checker )
08:07:41 ПП
User 119754639
Если нужна простая статическая типизация, Flow самое оно.
08:09:46 ПП
User 119754639
Насколько я понимаю, для ректа возможно даже лучше Flow и юзать.
08:09:47 ПП
User 119754639
http://flowtype.org/docs/react.html
flowtype.org/docs/react.html
Flow is a static type checker for JavaScript.
08:28:08 ПП
User 1294634
Так особо нет разницы
08:32:47 ПП
User 1294634
плюс у flow - его удобно юзать прямо в babel, а у ts свой отдельный компилятор. Но у ts уже есть неплохие тулзы как-то комплитер, рефакторинг и goto
08:36:08 ПП
User 119754639
User 1294634
Так особо нет разницы
Есть. Flow static type checker, а TS расширение языка (транспилер в JS) со статической типизацией.
08:36:21 ПП
User 1294634
http://flowtype.org/docs/five-simple-examples.html#2-adding-type-annotations
flowtype.org/docs/five-simple-examples.html
Flow is a static type checker for JavaScript.
08:37:18 ПП
User 1294634
flow тоже имеет расширение синтаксиса, и женерики там есть. Интерфейсов разве что нет)
08:38:13 ПП
User 119754639
User 1294634
flow тоже имеет расширение синтаксиса, и женерики там есть. Интерфейсов разве что нет)
Это все относится к статической типизации. Помимо этого в TS есть async/await и специфичные для MS фишки.
08:38:21 ПП
User 119754639
Т.е. в принципе, TS этот тот же babel.
08:38:48 ПП
User 1294634
ну, там есть некоторые фишки из stage1
08:38:53 ПП
User 1294634
декораторы и async-await
08:39:08 ПП
08:39:14 ПП
08:39:27 ПП
User 1294634
да, я тоже считаю отдельный от babel транспилер минусом
08:39:38 ПП
User 1294634
но это единственное серьезное различие с flow
08:40:42 ПП
User 1294634
но эти async/await и декораторы вроде отрубаются или отрубались, я вот не помню(активно их юзаю, не отключал, а наоборот врубал как только добавили)
08:41:06 ПП
User 119754639
Ну так это и есть основное отличие. TS транспилер со встроенным "flow", а "flow" самостоятельная тулза, которая может быть частью экосистемы в babel.
08:41:36 ПП
User 119754639
Про отличие и спрашивали :)
08:41:43 ПП
User 1294634
ну, ts может компилить в es6, а дальше под нужные экосистемы с плагинами babel комплими во что угодно или оставляем под нодой
08:42:05 ПП
User 119754639
TS кстати отстает от бабеля на сегодняшний день.
08:42:07 ПП
User 1294634
мы юзаем такой флоу, меня не устраивает es5 код ts
08:42:10 ПП
User 119754639
User 1294634
ну, ts может компилить в es6, а дальше под нужные экосистемы с плагинами babel комплими во что угодно или оставляем под нодой
Можно и так.
08:42:15 ПП
User 1294634
ну, мы так юзаем
08:42:26 ПП
User 119754639
Для фронта я так думаю
08:42:30 ПП
User 1294634
потому что как уже заметили, отстает
08:43:01 ПП
User 119754639
Ждем 2 и 2.1 TS :)
08:44:58 ПП
User 1294634
вот бы кто запилил babel-plugin-typescript )
08:47:52 ПП
User 1294634
кстати, я же прав, что на основе flow нет еще refactoring/completer/goto решений?
08:52:33 ПП
User 90246751
В вебшторме 2016 есть, но довольно слабенькое
08:52:42 ПП
User 90246751
Для атома вроде плагин был
09:16:54 ПП
User 1294634
ну, вебшторм сам в себе, он и js мог, но не стоит)
09:19:19 ПП
User 74329021
User 119754639
Т.е. в принципе, TS этот тот же babel.
Мы как-то делали сравнение, к слову, и на выходе у TS какой-то более приятный код получается, и более компактный и более читабельный (хотя кому какое дело :)), так что решили его вместо babel и юзать
09:22:35 ПП
User 1294634
@StGeass а какие версии сравнивали?
09:25:47 ПП
User 74329021
Это было пару месяцев назад, так что скорей всего 6.7.x с TS 1.7
11:26:30 ПП
User 4627228
Обзор инструментов для отладки быстродействия сайтов, Пол Айриш и Сэм Сакконе на Google I/O https://youtu.be/iMqi55rcR00
11:27:08 ПП
User 4627228
Высокопроизводительные веб-интерфейсы, Пол Льюис на Google I/O — https://youtu.be/thNyy5eYfbc