Size: a a a

Android Architecture

2020 February 05

(

( in Android Architecture
хотя вообще-то да, вру
источник

M

Malik in Android Architecture
Алексей Ершов
Или просто хорошие материалы о том, как писать конечные автоматы
Посмотри определение, тогда и гайд никакой не нужен будет
источник

(

( in Android Architecture
Надёжную фсм можно напилить на силед-классе
источник

АЕ

Алексей Ершов in Android Architecture
Я знаю матчасть, спрашиваю ради обмена опытом)
источник

(

( in Android Architecture
а-ля
sealed class FanState {
 object Off : FanState() { fun turnOn() = FanState.On }
 object On : FanState() { fun turnOff() = FanState.Off }
}
источник

(

( in Android Architecture
Но как бы удачи делать что-то сложнее и тем более расширять
источник

AP

Andrey Pomazkin in Android Architecture
Yanis
я делал через FSM, получилось хорошо. Вопрос в том получится ли реализовать на FSM, не слишком ли сложный сервис
что такое FSM?
источник

АЕ

Алексей Ершов in Android Architecture
попробую, поищу, поделюсь
источник

(

( in Android Architecture
Andrey Pomazkin
что такое FSM?
Finite State Machine
источник

(

( in Android Architecture
типа даже у меня в мвиае в паре мест прямо в редьюсере есть throw IllegalStateException, потому что там эмпирическая зависимость данных и гарантия, что при данном стейте данная мутация не может прийти
источник

АЕ

Алексей Ершов in Android Architecture
Andrey Pomazkin
что такое FSM?
конечный автомат, finite state machine, гуглится же)
источник

AP

Andrey Pomazkin in Android Architecture
(
Finite State Machine
ага, гуглится
источник

(

( in Android Architecture
Её можно было бы сделать формальной и статически надёжной, если бы в котлине были завтипы, опять же
источник

АЕ

Алексей Ершов in Android Architecture
за статической надёжностью не гонюсь, достаточно простоты юнит-тестирования
источник

(

( in Android Architecture
Тогда это просто мвиай, оторванный от юая, берите силед класс (можно туда конечно и данные пихать, но тогда получится Transition System, которая при некоторой степени формализма всё равно сводится к FSM), силед класс для переходов и функция которая применяет одну к другому
источник

(

( in Android Architecture
(S, M) -> S
источник

(

( in Android Architecture
Получится чистейшая машина Мура
источник

AS

Alexander Sitnikov in Android Architecture
Алексей Ершов
за статической надёжностью не гонюсь, достаточно простоты юнит-тестирования
Для FSM знаю одну либку, https://github.com/Tinder/StateMachine, может то что надо
источник

АЕ

Алексей Ершов in Android Architecture
(
Тогда это просто мвиай, оторванный от юая, берите силед класс (можно туда конечно и данные пихать, но тогда получится Transition System, которая при некоторой степени формализма всё равно сводится к FSM), силед класс для переходов и функция которая применяет одну к другому
Да, тоже в ту сторону думал.
источник

AD

Aleksey D. in Android Architecture
Алексей Ершов
за статической надёжностью не гонюсь, достаточно простоты юнит-тестирования
источник