Open3
RustにとってベターなUIアーキテクチャを考える
※現状、インプット元記事の著者が偏っている。もっと多方面からの主張を集めたいところ。
参考記事
Reactive UIの基本要素
- (1) appのデータ(モデル、状態、状態変数などと呼ばれることも)
- (2) appの見た目(ビュー)
- (2-1) appのデータを表現(表示)する要素
- (2-2) appのデータの更新イベントを発火させる要素
→ ざっくり解釈すると、UIが果たす機能の本質とは データを更新して見た目に反映すること である。
例:カウンターアプリの擬似コード表現↓[1]
// (1) appのデータ
struct AppState {
count: i32
}
// (2) appの見た目
VStack {
Text("count: \(state.count)") // (2-1) データを見せる要素
Button("Increment") {
state.count += 1
} // (2-2) データ更新をトリガする要素
}
Xilemのコンセプト
- view tree
- widget tree