カテゴリー
サインイン 新規登録

間違いや改善の指摘

内容の技術的な誤り・誤字脱字やミスのご報告・解説やトピックの追記/改善のご要望は教材をさらに良くしていく上でとても貴重なご意見になります。

少しでも気になった点があれば、ご遠慮なく投稿いただけると幸いです🙏

実際には誤りではなく勘違いであっても、ご報告いただけることで教材のブラッシュアップにつながります。

質問ポリシー①

教材受講者みなさんのスムーズな問題解決のために、心がけていただきたいことがあります。

教材の内容に関する質問を投稿しましょう

教材の内容に関係のない質問や教材とは異なる環境・バージョンで進めている場合のエラーなど、教材に関係しない質問は推奨していないため回答できない場合がございます。

その場合、teratailなどの外部サイトを利用して質問することをおすすめします。教材の誤字脱字や追記・改善の要望は「文章の間違いや改善点の指摘」からお願いします。

1-1

Redux とは

redux とは、フロントエンドにおける状態管理に特化したライブラリです。

react だけでもstateを使えば状態を管理できるのになぜ他のライブラリが必要なのかと思う方もいるかもしれません。そこで、その理由をはじめに説明したいと思います。

すでに redux について勉強したことがある、または実装したことがあるという人は飛ばしていただいても結構です。

react の state の限界

小規模なアプリケーションであればもちろん一つの state でも十分に管理することができます。しかし、大きなアプリケーションになると、コンポーネントツリーは肥大化し、状態管理が複雑になります。

もし親コンポーネントで状態を一限管理しようとするととても大きな state になってしまい、状態の更新や取得が複雑になりバグの温床になってしまいます。
またバケツリレーがいたるところで起こってしまうのも管理が大変になり問題です。

また、それぞれのコンポーネントで独自の state を持ってしまうと、他のコンポーネントにその状態を知らせるのが難しくなり複雑化してしまいます。

from https://css-tricks.com/learning-react-redux/

redux で状態を分離する

redux を使うことで状態管理にかかる部分をコンポーネントのツリーから分離することができます。煩雑なバケツリレーからの解放(完全に解放されるわけではないが幾分ましになる)やコンポネート間での状態のやりとりが可能になります。

from https://css-tricks.com/learning-react-redux/

redux の特徴

redux は flux という概念に基づいて設計されています。flux とは一方向に状態が流れるというという特徴を持っています。また、値を直接変更しないという関数型の特徴も併せ持っています。

from https://codezine.jp/article/detail/10499

今はそういう概念があるんだなぁぐらいの理解で大丈夫です。一通り redux を動かすとこれらがどんなものなのかが実感がわくようになっているはずなので安心して次のステップに進んでください!

次の章では、実際に redux の基礎的な概念を紹介していきます。