Size: a a a

Clojure — русскоговорящее сообщество

2020 June 04

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Alex Zveryansky
господа, а есть примеры хорошего опенсорса с реагентом под капотом? так чтобы можно было лучшие практики посмотреть. гитхаб увы не пишет для реагента used by
рефрейм стоит сразу поглядеть
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Я бы на re-frame сразу смотрел
источник

A

Andrey in Clojure — русскоговорящее сообщество
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Maxim Penzin
рефрейм стоит сразу поглядеть
Ты там кстати с mui разобрался?
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ага,
то есть на реагенте стоит попробовать все тюториалы, немного пообвыкнуться, а потом заняться рейреймом, хотя сначала не понятно, для чего все эти навороты
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Anton Chikin
Ты там кстати с mui разобрался?
и да и нет, то есть я вроде собрал что-то до рабочего состояния, но сейчас это всё выкинули и на простов цссе пока прототипим
источник

KR

Kostyantin Randomnam... in Clojure — русскоговорящее сообщество
а в чем могут быть проблемы с муи?
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ну там надо для начала вкурить всякие реактовские тонкости, потом не забыть прочитать экземплы к реагенту про то, как надо хендлить все эти муишные заморочки
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
например, с текстарией
источник

KR

Kostyantin Randomnam... in Clojure — русскоговорящее сообщество
спасибо, интересно
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
там ничего такого страшного на самом деле, но вот с того примерчика в реагенте рекомендую начинать
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
мне сейчас пофиг какой гуй, поэтому тупо цсс и рефрейм
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
цсс хоть бутстрап, хоть булма какая-нибудь - это для прототипирования, конечно.
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
А может кто-нибудь рассказать в каких типах задач полезны очереди или каналы? Речь об очередях и каналах в памяти, не персистентых.
В тех проектах, что я сталкивался, они не нужны или я не понимаю зачем они там нужны.
Т.е. внутри я всегда использовал синхронные вызовы.
источник

VL

Vlad Lisovsky in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
А может кто-нибудь рассказать в каких типах задач полезны очереди или каналы? Речь об очередях и каналах в памяти, не персистентых.
В тех проектах, что я сталкивался, они не нужны или я не понимаю зачем они там нужны.
Т.е. внутри я всегда использовал синхронные вызовы.
Параллельная обработка? Интерфейсы?
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
А может кто-нибудь рассказать в каких типах задач полезны очереди или каналы? Речь об очередях и каналах в памяти, не персистентых.
В тех проектах, что я сталкивался, они не нужны или я не понимаю зачем они там нужны.
Т.е. внутри я всегда использовал синхронные вызовы.
Т.е. вопрос всё-таки синхронно vs асинхронно?
источник

AS

Anatoly Smolyaninov in Clojure — русскоговорящее сообщество
Mikhail Borisov
Т.е. вопрос всё-таки синхронно vs асинхронно?
да, если вкратце, синхронный код — неэффективно, а асинхронные программы на колбэках читать \ понимать сложно. Каналы вот один из методов как писать асинхронно но чтобы выглядело “более синхронно”. если интересно про теорию то можно поискать по “communicating sequential processes”
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Почему синхронный код это неэффективно?) В контексте I/O допускаю
источник

AS

Anatoly Smolyaninov in Clojure — русскоговорящее сообщество
в контексте параллельных операций, можно написать эффективно но сложно отлаживать
источник

MA

Mike Ananev in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
А может кто-нибудь рассказать в каких типах задач полезны очереди или каналы? Речь об очередях и каналах в памяти, не персистентых.
В тех проектах, что я сталкивался, они не нужны или я не понимаю зачем они там нужны.
Т.е. внутри я всегда использовал синхронные вызовы.
Глобально, очередь это примитив (абстракция) которая выполняет одну функцию: перемещает данные из одной точки в другую асинхронным способом. Она разделяет продьюсера данных и потребителя данных в пространстве и времени. Оба работают независимо, один производит данные и кладёт в очередь, очередь  «перемешает» данные, а где-то там когда-то и кто-то данные заберёт
источник