C#から離れている間にできてたLivetとRxがすごいと私の中で話題に
なにこれすごい
どちらもまだ全容を把握し切れていませんが、すごいのはわかりました。
国産のMVVMヘルパーLivet
単方向とはいえ、ほとんどのプロパティをバインドできるようになるのは素敵すぎます。そのほかにもコマンドを実装しやすくするヘルパークラスがあるなど、コードビハインドが激減するようなツールが提供されているようです。
Livet - the sea of fertility
そのほかにもかなり魅力的なキーワードが並んでいます。ある程度理解できるようになったらLINQが現れたときのときのような大きな発想の転換が私の中で起きそうです。
イベントや時間をLINQで扱えるReactive Extensions(Rx)
async/awaitの登場により一部機能はオワコンといわれているそうですが、それでもイベントをLINQで扱ったり、時系列でフィルタリングしたりできるのはかなり魅力的。
イベント・プログラミングとRx − @IT
によると、
// ある対象の値(=watchTarget.Valueプロパティ値)を1秒ごとに監視 var polling = Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1)) .Select(_ => watchTarget.Value) .DistinctUntilChanged(); // 値が変化したときのみ流す
こんな感じで1秒ごとにポーリングできるとかできます。すごい(小並感)。