Rx は、イベント駆動型およびリアクティブプログラミング全般の素晴らしいフレームワークであることは間違いありません。実際、ディスパッチ用のインターフェースに制限することは、実際には、IObservable
より重いものよりも優れた形式であると言えます。その場合、自然に「メッセージング」指向のスタイルを使用しているため、スケーリングと不変性に適しています。関心の分離が自然になります。
将来苦労する可能性があるのは、システムが単一のアプリケーションを超えて拡張される場合です。Rx は単一のアプリケーション内では非常に単純ですが、アプリケーション間に「インフラストラクチャ」を追加する必要があるとすぐに、いくらかの努力が必要になります。うまくいかないわけではありません!Subject
およびインスタンスのさまざまなソースに接続すると、そうですIObservable
-場合によっては手動で行う必要があるだけですが、他の「イベントソーシング」フレームワーク(何を念頭に置いていましたか?)には、より広い範囲の外部「アダプター」がある場合があります'。
一般的にこのように使用されている Rx について (つまり、インターネット上で)。まず、.NET 以外にも多くのプラットフォームがあり、Rx はそれらのいずれにも表示されないことを覚えておいてください。リアクティブなスタイルは、別の名前で呼ばれる可能性があります。
第二に、あなたは一人ではありません。CQRS で Rx が大好きな人を含めて、Scala と JVM でやりたいと思っています。