宣言的UI
declarative UI
Howのところをコンパイラに任せる
DOM操作は命令的
宣言的なおかげでViewを関数として扱える
v = View(State)
命令的だとfor文(展開したものを書くと考えるとわかりやすい)を書いてるかんじか
count=1のときのコード、count=2のときのコード、を両方書いてる感じ
Reactでは、プログラマは宣言的にコンポーネントを作っていき、ReactのCoreがそれを命令的なものに直し逐次実行している(?)
宣言型UIであるものの例
HTML
C#
Vue
Jetpack Compose
Haskell GUI開発
Flutter
Elmとか?
Unity
対となる概念
命令的、imperative
js$(window).on('load', function() {
$(".page-loader").fadeOut('fast');
});
DOMを指定して、それに対して操作を行う
従来のiOS, Android開発?
jqueryとreact, fluxの比較
手続的GUI
では、時間軸などの状態を意識しないといかないので、コードだけ読んでもどういう画面になるのかが理解しづらい
特に複雑になってくるとまじでわけわかめ
実際に動かしてみて動きを理解していく感じのデバッグ
動的型付けのときの問題みたいな?
参考
詳しい
手続きはモードを発生させる
>
モードがあるとモードエラーを起こす
>