[解決済み] ReduxとRxJS、似ているところはありますか?[クローズド]
質問
ReduxはFluxのより良いquot;implementation"であり、よりシンプルにするための再設計と言った方がよいでしょう(アプリケーションの状態管理)。
リアクティブプログラミング(RxJS)はよく聞きますが、まだ勉強してません。
私の質問は、この2つの技術の間に交差点(共通点)があるのか、それとも補完関係にあるのか? ...あるいは全く違うのか?
どのように解決するのですか?
要するに、これらは非常に異なる目的のための非常に異なるライブラリですが、たしかに漠然とした類似点はあります。
Reduxは、アプリケーション全体の状態を管理するためのツールです。通常、UIのためのアーキテクチャとして使用されます。Angularの(半分の)代替品とお考えください。
RxJSは、リアクティブプログラミングライブラリです。通常、JavaScriptで非同期タスクを達成するためのツールとして使用されます。Promisesの代替品とお考えください。
リアクティブプログラミングは、データの変更を 遠くから観察する . データは 離れているところから変更される .
の例です。 遠くから見た :
// In the controller.js file
model.set('name', 'George');
は モデルが変更される をコントローラから変更します。
以下は 遠くから観察した :
// logger.js
store.subscribe(function (data) {
console.log(data);
});
Loggerでは、Storeで起こるデータの変化を(離れたところから)観察し、コンソールに書き込みます。
ReduxはReactiveパラダイムをほんの少し使っています:Storeはreactiveです。ストアは反応的です。遠くからコンテンツを設定することはありません。そのため
store.set()
がないのはそのためです。Storeは、離れたところからアクションを観察し、自分自身を変化させる。そして、Storeはそのデータを他者が遠くから観察することを可能にする。
RxJSもReactiveパラダイムを使用していますが、アーキテクチャである代わりに基本的なビルディングブロックを提供しています。 オブザーバブル を提供し、この「遠くから観察する」パターンを実現します。
結論として、異なる目的のために非常に異なるものですが、いくつかのアイデアを共有しています。
関連
-
[解決済み] Reduxのアクションをタイムアウトでディスパッチする方法とは?
-
[解決済み] Angular/RxJS `Subscription` からいつ退会すればいいのか?
-
[解決済み] Reduxの非同期フローになぜミドルウェアが必要なのか?
-
[解決済み] Reduxストアの状態をリセットする方法とは?
-
[解決済み] ES6 ジェネレータで redux-saga を使用する利点/欠点と ES2017 async/await で redux-thunk を使用する利点/欠点
-
[解決済み] bootstrap のポップオーバーがすべての要素の上に表示されない
-
[解決済み] 兄弟ノードを選択する方法はありますか?
-
[解決済み] オブジェクトの配列からReactコンポーネントをレンダリングする
-
[解決済み] 無効になっている入力フィールドの値を送信する
-
[解決済み] HTML要素にスクロールバーがあるかどうかをチェックする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Javascriptによるタッチスクリーンデバイスの検出
-
[解決済み] Node.jsでbase64エンコードされた画像をAmazon S3へアップロードする
-
[解決済み] Google maps API V3 - 同一地点に複数のマーカーを設置する。
-
[解決済み] javascript の関数から `undefined` と `null` のどちらを返すのが良いのでしょうか?
-
[解決済み] JavaScriptで:hoverのCSSプロパティを変更する
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] JavaScriptで文字列を数値に変換する最速の方法は何ですか?
-
[解決済み] JavaScriptでの大文字小文字を区別しない正規表現
-
[解決済み] サブドメインにまたがってlocalStorageを使用する
-
[解決済み] jQueryで入力ファイルが空かどうかをチェックする方法