アーキテクチャ的には、WPF は非常に優れていると思います。概して、私はレンダリングとアニメーションの内部構造の根底にあるものの大ファンです。テンプレートとスタイリングの設定の柔軟性は非常に印象的です。
しかし、私は XAML が大嫌いです。XAML は多くのことを複雑にしているように感じます。私は大小さまざまなアプリケーションでそれを使用してきましたが、XAML で何かを行う方法を理解しようとして、基本的な原則は基本的ですが、構文は風変わりです。それだけでなく、解析/バインディングの特定の部分がどれほど重いのか、何度も疑問に思いました。(コンパイルされていることは知っていますが、実行時にどれだけ評価されるかはわかりません)
XAML は、ビジュアル ツリーを構築して読み込む方法の 1 つにすぎません。非 XML のコードベース (ただし、大部分は宣言型) の方法でビジュアル ツリーの構築を簡素化するためのフレームワークはありますか? 具体的には、MVVM アプローチを維持しながら、次の問題のいずれかを軽減するフレームワークに興味があります。
強く型付けされたバインディング。ViewModel が特定の型に準拠する必要があることを指定します。BaseBinding はボンネットの下でリフレクションを使用していると思いますが、その速度については少し懐疑的です。壊れたバインディングが煩わしいことは言うまでもありません。
結束が速く、非
INotifyPropertyChanged
結束。BindableProperty<T>
ViewModel プロパティのすべての変更を受け取るのではなく、ある種のものが作成され、バインディングがそれを直接リッスンする可能性があるようです。また、文字列引数よりも直接コールバックを使用する方が有利なようです。リソース管理への別のアプローチ。繰り返しになりますが、ある種の厳密に型指定された辞書は非常に優れています。スタイルをラムダまたは強く型付けされた側面をキャプチャするものとして見たいと思っています。
要約すると、非 XAML ベースで、MVVM に適合し、厳密に型指定されているフレームワークはありますか?