statechart
/masui/Statechart
気が向いたらコードの解説を書くmiyamonz.icon
最初、コード自体はとても小さいはずなのに、何を意味していて、どう動いているのかが全然理解できなかったmiyamonz.icon
今はもう一切迷いなく理解ができる
コードが小さいことは良いが、読んですぐわからないと、チームで書くコードとしては採用しにくいパターンだ。
TSで型をあてつつ、読みやすくする方法があります。
この関数を返してwhileで繰り返すテクニックは、Trampoline (computing)と類似している
返すべき値の処理を、別の関数に委譲しているという点で同じ
状態遷移も「もし遷移先がなかったら親が判断する」、ということを書きたい。だからこれが使える
単なる委譲を表現していることを考えると、statechart的なスタイルは、図で表現するようなもの以上の表現力があると言える。
しかし、図で表現できること以上の複雑な遷移を実装したところで、スパゲッティに苦しむだけとも言える