F# のイベントに既に精通しており、C# との相互運用をあまり行う予定がない場合、Reactive Framework の使用を検討する重要な理由はありますか?
1 に答える
主な違いは次の 2 つだと思います。
IEvent<'T>
まず、インターフェイス (およびモジュール内の関数Event
) とインターフェイス (モジュールおよび Reactive FxIObservable<'T>
の関数によって使用される)には違いがあります。Observable
違いについては、以前に SO で説明しました。Observable
Reactive Framework はより複雑なライブラリであるため、F#やEvent
モジュールでは利用できない多くのコンビネーターを実装しています (ただし、それらの多くを追加するオープンソース プロジェクトがあります) 。
Observable
要約すると、モジュールの関数を優先する必要があります。必要なものがすべて揃っていれば、Reactive Framework は必要ありません。そうでない場合は、Reactive Framework または MiniRx のいずれかが必要になります (これは、より効率的である場合もあると思います)。
F#Event
モジュールは 2006 年にさかのぼるので、Reactive Framework は明らかにそれに触発されていると思いますが、F# 機能を完全に置き換えるものではありません (主に、.NET または F# コアの標準部分ではないため)。