Size: a a a

Reatom — стейт-менеджер

2020 December 09

ДС

Дмитрий Скрыльников... in Reatom — стейт-менеджер
Андрей Кустов
А можно как-то подписаться на action без привязки к атому и не во время объявления (передача функции реакции)? То есть сделать так, чтобы какая-то функция вызывалась при диспатче определенного action.
state.subscribe?
источник
2020 December 10

AI

Arthur Irgashev in Reatom — стейт-менеджер
artalar
динамические зависимости, я же описал. Это в сложных кейсах может очень сильно перф улучшить
А есть сравнения перфа с другими стм ? Часто от тебя слышал, что мобикс хорош по перфу

Как в сравнении с ним, например ? Просядет за счёт иммутабельности ?
источник

a

artalar in Reatom — стейт-менеджер
Arthur Irgashev
А есть сравнения перфа с другими стм ? Часто от тебя слышал, что мобикс хорош по перфу

Как в сравнении с ним, например ? Просядет за счёт иммутабельности ?
Смотря для каких кейсов, все очень индивидуально.
Например, для работы со списками больше нескольких десятков тысяч элементов иммутабельность принципиально не подходит (если это не спец либы с внутренними оптимизациями)
источник

a

artalar in Reatom — стейт-менеджер
Мне как-то нужно было работать с сотней тысяч элементов и оказалось что просто клонирование списка - 2 секунды, immutablejs - 200ms. Это не варик, конечно)
источник

AI

Arthur Irgashev in Reatom — стейт-менеджер
artalar
Смотря для каких кейсов, все очень индивидуально.
Например, для работы со списками больше нескольких десятков тысяч элементов иммутабельность принципиально не подходит (если это не спец либы с внутренними оптимизациями)
Ну я правильно понимаю, что для 99% приложений ваще можно не париться ?

Я юзал на одном проекте, и вообще никаких проблем не было. Но там средние объемы данных ворочались. Не сотни тысяч, но тысячи объектов
источник

a

artalar in Reatom — стейт-менеджер
Arthur Irgashev
А есть сравнения перфа с другими стм ? Часто от тебя слышал, что мобикс хорош по перфу

Как в сравнении с ним, например ? Просядет за счёт иммутабельности ?
Тут скорее вопрос оверхеда самой либы. Для мобыкса, например, каждый трап прокси - достаточно дорогая операция + куча оверхеда на саму реактивность. У редакса до нескольких десятков подписчиков оверхед не очень большой, потом могут начаться проблемы, хотя где-то могут начаться проблемы и раньше и сильно позже.

Кароч главное - это минимизировать общий оверхед либы, что бы уменьшить количество крайний кейсов, когда она не подходит. Например редакс не подходит для анимаций или аналитики, хотя иногда это удобно через СТМ делать. И тп и тп
источник

a

artalar in Reatom — стейт-менеджер
Arthur Irgashev
Ну я правильно понимаю, что для 99% приложений ваще можно не париться ?

Я юзал на одном проекте, и вообще никаких проблем не было. Но там средние объемы данных ворочались. Не сотни тысяч, но тысячи объектов
Ну знаешь… Конкурентный режим реакта сделает твое приложение плавным, но убьет батарейку телефона / ноута пользователя заметно(?) быстрее))
источник
2020 December 11

AI

Artsiom Ivanov in Reatom — стейт-менеджер
artalar
Ну знаешь… Конкурентный режим реакта сделает твое приложение плавным, но убьет батарейку телефона / ноута пользователя заметно(?) быстрее))
про какие фичи речь? Почему больше вычислений будет?
источник

a

artalar in Reatom — стейт-менеджер
Artsiom Ivanov
про какие фичи речь? Почему больше вычислений будет?
Ну квантование же денег стоит. Те сам механизм шедулинга, работы с очередями - это все логика, которая должна вычисляться и, соответственно, потреблять ресурсы ЭВМ.
“Сколько” этих ресурсов будет потребляться и как сильно это может сказаться на производительности - сазать не могу. Скажется ли - да точно скажется. Сильно ли - не знаю, нужно тестить. Но бесплатных вычислений, очевидно, не бывает
источник

AI

Artsiom Ivanov in Reatom — стейт-менеджер
artalar
Ну квантование же денег стоит. Те сам механизм шедулинга, работы с очередями - это все логика, которая должна вычисляться и, соответственно, потреблять ресурсы ЭВМ.
“Сколько” этих ресурсов будет потребляться и как сильно это может сказаться на производительности - сазать не могу. Скажется ли - да точно скажется. Сильно ли - не знаю, нужно тестить. Но бесплатных вычислений, очевидно, не бывает
у меня почему-то в голове идея - скедулинг позволит НЕ делать лишнюю работу, если приоритеты изменились
источник

a

artalar in Reatom — стейт-менеджер
Artsiom Ivanov
у меня почему-то в голове идея - скедулинг позволит НЕ делать лишнюю работу, если приоритеты изменились
Не, это оч редкий кейс.
Шедулинг позволяет бить работу на чанки и исполнять их асинхронно, это основной кейс
источник

a

artalar in Reatom — стейт-менеджер
Типа, есть рендер на пол секунды, он состоит из сотен компонентов. Мы рендерим по десятку компонентов в фрейм и в последнем фрейме сливаем все в DOM
источник
2020 December 16

a

artalar in Reatom — стейт-менеджер
YouTube
Укрощаем нормализованное состояние: граф объекты и санитайзеры | Алексей Демедецкий, Sigma Software
Алексей рассказал про работу с нормализованным состоянием, какие е ней есть подводные камни и как их можно избежать: нормализация, граф объекты, вахтёры, они же санитайзеры

00:00 — Представление темы и спикера
00:47 — Денормализация: классы
04:27 — Как работать с данными по-другому?
07:10 — Строим нормализованное состояние: правила
10:01 — В чём плюсы и недостатки такой системы
12:47 — Граф объекты: что это такое и зачем они нужны
18:10 — Вахтёры, они же санитайзеры, и их использование
22:52 — Итоги
26:25 — Ответы на вопросы слушателей

Презентация: https://bit.ly/3k2CGzU
Другие видео митапа по iOS-разработке: https://www.youtube.com/playlist?list=PLknJ4Vr6efQGZaAvAOmMAgCfKoXqL9JEn

Подпишитесь на канал, соцсети и блоги AvitoTech, чтобы узнавать больше о технологиях Авито 👇🏻
ВК: https://vk.com/avitotech
Фейсбук: https://www.facebook.com/AvitoTech/
Твиттер: https://twitter.com/AvitoTech
Телеграм: https://t.me/avitotech
Хабр: https://habr.com/ru/company/avito/
Медиум (eng): https://medium.com/avitotech
источник

IA

Ilya Agarkov in Reatom — стейт-менеджер
artalar
YouTube
Укрощаем нормализованное состояние: граф объекты и санитайзеры | Алексей Демедецкий, Sigma Software
Алексей рассказал про работу с нормализованным состоянием, какие е ней есть подводные камни и как их можно избежать: нормализация, граф объекты, вахтёры, они же санитайзеры

00:00 — Представление темы и спикера
00:47 — Денормализация: классы
04:27 — Как работать с данными по-другому?
07:10 — Строим нормализованное состояние: правила
10:01 — В чём плюсы и недостатки такой системы
12:47 — Граф объекты: что это такое и зачем они нужны
18:10 — Вахтёры, они же санитайзеры, и их использование
22:52 — Итоги
26:25 — Ответы на вопросы слушателей

Презентация: https://bit.ly/3k2CGzU
Другие видео митапа по iOS-разработке: https://www.youtube.com/playlist?list=PLknJ4Vr6efQGZaAvAOmMAgCfKoXqL9JEn

Подпишитесь на канал, соцсети и блоги AvitoTech, чтобы узнавать больше о технологиях Авито 👇🏻
ВК: https://vk.com/avitotech
Фейсбук: https://www.facebook.com/AvitoTech/
Твиттер: https://twitter.com/AvitoTech
Телеграм: https://t.me/avitotech
Хабр: https://habr.com/ru/company/avito/
Медиум (eng): https://medium.com/avitotech
ого ты вспомнил =) Спасибо
источник

IA

Ilya Agarkov in Reatom — стейт-менеджер
блин я думал он раскроект тему “когда данные чистить” а но просто сказал “пофиг - можно не чистить”
upd: в вопросах/ответах немного тему раскрыли
источник
2020 December 17

AI

Artsiom Ivanov in Reatom — стейт-менеджер
помню давно видел подход с автоматической сборкой мусора в Redux 🤔
https://developers.soundcloud.com/blog/garbage-collection-in-redux-applications
источник

IA

Ilya Agarkov in Reatom — стейт-менеджер
буду на выходных пробовать добавить простой счетчик “подсписчиков”. Условно каждый раз когда добавляем сущность в таблицу то прибавляем 1 удаляем - вычитаем 1, и если получаем 0 то только тогда реально удаляем объект из таблицы
источник
2020 December 21

DA

Dmitry Andriyanov in Reatom — стейт-менеджер
artalar
Могу код скинуть и детально сказать что и зачем поправить
Привет! А где-то можно посмотреть объяснения и код? Очень интересно!
источник

a

artalar in Reatom — стейт-менеджер
Dmitry Andriyanov
Привет! А где-то можно посмотреть объяснения и код? Очень интересно!
источник

a

artalar in Reatom — стейт-менеджер
Ключевые фичи
источник