169 похожих чатов

У меня вот такой странный вопрос: для чего нужны Bloc

если есть Cubit? Я пользовался и тем и другим. Знаю что Bloc это Cubit расширенный эвентами, но не особо понимаю зачем это нужно. По сути приходится только больше кода писать, вместо того чтобы просто сделать в кубите методы аналогичные эвентам. При этом часто вижу что в добавок к эвентам в блоке делают одноименные методы которые делают add(event). Ну и смысл тогда в этом? Асинхронность эвентов перед методами? Но можно сделать асинхронный метод и не ждать его завершения если не нужен результат. В то же время эвент не может вернуть результат, а метод может - это преимущество.

10 ответов

43 просмотра

Yakov K., [02.03.2022 2:53] Особенно логику троттлинга и дебаунсинга поисковых эвентов будет очень удобно на нем делать, да 🅵🅾️🆇, [02.03.2022 2:54] а уж как весело с консистентностью данных - мммм 🅵🅾️🆇, [02.03.2022 2:54] когда два эвента паралельно запускаешь и получаешь состояние гонки с абсолютно дэбильными состояниями причем еще и отрабатывающими не обязательно в порядке запуска

Ghost- Автор вопроса
redzed .
Yakov K., [02.03.2022 2:53] Особенно логику троттл...

> троттлинга и дебаунсинга поисковых эвентов не знаю что это > когда два эвента паралельно запускаешь странно, у меня ни разу не было такой необходимости

Ghost
> троттлинга и дебаунсинга поисковых эвентов не ...

https://medium.com/nuances-of-programming/%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-throttling-%D0%B8-debouncing-4f0a839769ef

Ghost- Автор вопроса
redzed .
https://medium.com/nuances-of-programming/%D1%87%D...

Дельная статья. Понятно. Но мне такое не попадалось...

Ghost
Дельная статья. Понятно. Но мне такое не попадалос...

Проблема в том что на кубите так нельзя будет сделать, т.к там методы, а не эвенты эвенты это стрим, в котором можно модифицировать саму логику обработки данных через stream_transformer/bloc_concurrency Я например имею блок пагинации, и чтобы когда я долистал до конца списка оно не подгружало миллион раз инфу, я накладываю трансформер на стрим эвентов - в моем случае троттлинг, который позволяет мне только один раз за небольшой промежуток времени отправить эвент А через кубит у меня бы летело куча методов подгрузки без остановки, и это никак не исправить..

Ghost- Автор вопроса
redzed .
Проблема в том что на кубите так нельзя будет сдел...

Понятно, но это такая специфичная задача. Для большинства простых интерактивностей хватит и кубита...

Ghost
> троттлинга и дебаунсинга поисковых эвентов не ...

Объясняю, что это: дебаунс — это когда ты быстро набираешь текст на клавиатуре — а обрабатывается в итоге только один ивент, с итоговым текстом. Когда ты набрал символ, и прождал, допустим, 500 мс, он решает, что ты закончил. троттлинг — наоборот. Когда ты несколько раз тапаешь на кнопку — но сработает только первый раз, а дальше кнопка, например, на 2 секунды блокируется. Чтобы исключить несколько случайных нажатий.

Хм, а как же до появления блока решали вопрос с дебаунсом и троттлингом?

san-smith
Хм, а как же до появления блока решали вопрос с де...

Таки там не на блоке все завязано, а на стримах

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта