.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

メリット

状態管理の一元化

アプリケーション全体の「状態(State)」を1つの大きなツリー(Store)で管理(Single Source of Truth)。

予測可能性と一貫性

状態は直接変更できず「Reducer」という純粋関数を通じてのみ状態を更新。

強力なデバッグツール

開発を強力にサポートするブラウザ拡張機能がある(Redux DevTools?)。

テストのしやすさと保守性

「Reducer」は、外部に依存しない純粋関数として記述。

デメリット

学習コストが比較的高く、記述量が増えるため、小規模開発ではオーバー・エンジニアリング。

一貫性

状態遷移が明確でバグが減るが、記述量(ボイラープレート)が増える。

デバッグ

タイムトラベル機能で追跡が容易だが、学習コストが比較的高い。

拡張性

大規模でも秩序を保てるが、小規模ではオーバー・エンジニアリング

特徴

三原則

Single source of truth

状態は一つのStoreのobjectツリーに格納される。

State is read-only

Actionを発火することが、状態を更新する唯一の方法。

Changes are made with pure functions

状態がActionによってどのように変更されるか、
定義するために純粋な(副作用のない)Reducerを書く。

ドメイン

Actions

Reducers

Store

View

Fluxとの違い

概要

Fluxの場合

Reactコンポーネント自身が個別に状態管理をする。

Reduxの場合

参考

Saga

概要

詳細

・・・

参考

redux-saga

その他

関数型言語の副作用

概要

参考

ツール類

以下のようなツールが存在しているらしい。

Redux DevTools?

Redux Toolkit

Reduxの問題点

感想

参考

参考

Qiita

POSTD

Medium

terrierscript

inuscript

Reactのセカンド・ステップ

マイクロソフト系技術情報 Wiki


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS