Size: a a a

Programming Offtop

2020 August 03

I

Igor in Programming Offtop
Твой стейт должен быть "логическим представлением UI"
Что прям "UI"-тесты можно было на него писать.

А настоящий UI должен быть просто мапингом из @composable функций, твоего стейта
источник

I

Igor in Programming Offtop
Настоятельно рекомендуется к просмотру https://youtu.be/XBfi3Q74BnE
источник

(

( in Programming Offtop
Igor
Ну так ADT (алгебраические типы данных)

- Произведение
Дробишь стейт на кучу мелких стейтов, вложенных в друг друга (data) классов

> Ограничить бы набор данных для определенного состояния

- Сумма
Выражаешь отдельные стейты в виде sealed class
сюда бы ещё завтипы...
источник

I

Igor in Programming Offtop
Завтипы все делают лучше 😏 ... и еще row-полиморфизм
источник

Д

Денис in Programming Offtop
а обработка событий каким образом происходит в compose? в функцию рендера лямды передавать?
источник

I

Igor in Programming Offtop
В большинстве кейсов хватит просто колбек-функции
источник

Д

Денис in Programming Offtop
а presenter или vm использовать тут нет особо разницы выходит?
источник

I

Igor in Programming Offtop
Вообще-то их не дожно быть. Зачем они в этой схеме?
источник

Д

Денис in Programming Offtop
ну в статье там presenter. а кто будет обрабатывать события?
источник

СГ

Сергей Греков... in Programming Offtop
Денис
ну в статье там presenter. а кто будет обрабатывать события?
Это просто компонент для абстракции от фрагмента/активити, можно и без него обойтись. Его чаще называют фичей какой нибудь
источник

СГ

Сергей Греков... in Programming Offtop
На его название не смотри, оно там не важно
источник

I

Igor in Programming Offtop
Денис
ну в статье там presenter. а кто будет обрабатывать события?
Судя по статье 3 он используется что бы эффекты исполнять и с DI скрестить TEA
В нем нет логики и он не занимается обработкой событий (кликов и тд)
источник

Д

Денис in Programming Offtop
Igor
Судя по статье 3 он используется что бы эффекты исполнять и с DI скрестить TEA
В нем нет логики и он не занимается обработкой событий (кликов и тд)
а где это происходит? в статье там в presenter вроде как передавался стейт и событие после чего стейт обновлялся. по идее если потребуется по событию загрузить данные то это нужно будет делать там же, или нет?
источник

Д

Денис in Programming Offtop
еще бы с rx на корутины переписать пример, ну то уже по ходу дела разберусь
источник

СГ

Сергей Греков... in Programming Offtop
Денис
еще бы с rx на корутины переписать пример, ну то уже по ходу дела разберусь
А что корутины там поменяют с точки зрения клиентского кода?
Просто будет вместо fun call(cmd : Cmd) : Single<Msg> метод   suspend fun call(cmd : Cmd) : Msg
источник

Д

Денис in Programming Offtop
Ну очередь организовать там надо будет по другому, но в целом думаю не проблема
источник

I

Igor in Programming Offtop
Денис
а где это происходит? в статье там в presenter вроде как передавался стейт и событие после чего стейт обновлялся. по идее если потребуется по событию загрузить данные то это нужно будет делать там же, или нет?
В функции update, внутри Component
источник

Д

Денис in Programming Offtop
Ну так presenter имплементирует Component
источник

S🕶

Sander 🕶 in Programming Offtop
Cat is dancing Cha chA cha
источник

S🕶

Sander 🕶 in Programming Offtop
Всем привет
источник