Reduxを使ってきて感じたデメリット

私が初めてReactで開発を行った時は、Reduxを使うのがデファクトスタンダードだよ、という風潮があったために、特に何も考えずにReduxを使い始めました。

結局、Reduxのメリットが分かったのは実際に使い始めてからでした。

この記事では、私が感じたReduxのデメリットについて書こうと思います。

ボイラーテンプレートが増える

Reduxを使うと、状態を更新するために、action, action creator(必要に応じて), reducer を記載する必要があります。

どんなに単純で小さな処理であっても、これらを書く必要があるため、コード量が多くなります。

よく言えば統一性があるのですが、コード量が多くなるということは、それだけ間違えるチャンスも多くなるし、目的のものを見つけることも難しくなります。

学習コストが結構高かった

Reduxの概念の勉強するためのコストが結構かかりました。

当時はReduxはおろかReactを知る人も周りにいなかったので、すべて手探りで開発しました。

しかも、それなり大規模な会社の基幹システムの開発だったため、プレッシャーもありました。

今思えば、実装に入る前に、ある程度Reduxを研究する時間が欲しかったです。

何も考えずにやるとグローバルな状態が大変なことになる

Reduxは、そのアプリケーションの状態をstoreというところで一元管理します。

しかし、何も考えずになんでもかんでもstoreにいれてしまうと、storeが肥大化します。

これは別にグローバルにしなくていいのに、、というものもstoreに入ってくると、コードの意味があいまいになりはじめて、いずれ理解が困難なものになります。(実際になりました。)