これは日記です。
最近業務のRNプロジェクトの設計見直し議論をやっていて、いろいろ調べているんだけど、悩ましい。
Redux本当に必要なんだろうかという気持ちが拭えず
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
業務はともかく趣味では一度Reduxを全く使わずReactのComponentベース+レイヤードアーキテクチャを試してみたいな。なんかReduxへのアンチテーゼとして別の軽量なオレオレFluxを各自が提案する方向性は筋が悪そうに思える
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
少なくともViewの状態をReduxのStoreで管理するのは厳しいと思っていて、APIなどデータレイヤーの情報をStoreに入れるだけにしたい
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
我々ネイティブエンジニアはレイヤードアーキテクチャで問題なくやれていたはずでは
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
JSerは設計を提案するためにライブラリを作りがちだけどプレーンで書いても辛くない設計を考えたいネイティブマン
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
しかしこうカオスだと最善解を見つけたい沼にハマる気持ちも分かるしJS界おもしろいな
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
なんか最近TypeScriptとかimmutable.jsとか様々なものについて調べてるけど、結局のところJavaScriptがKotlinみたいな言語だったら存在しなかった課題なんだよな…みたいな気持ちになって虚無
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月11日
Reduxって、SPAでのブラウザゲームみたいにグローバルなデータがあって、そのデータを変更(主人公のHPを回復するとか)した時に意識しなくても無数にある全てのHPを参照するComponentが整合性を保ってその状態を反映してくれるみたいな所にメリットがあるのだろうと思ったけど
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月12日
そもそもローカルにグローバルな状態がほとんどなく画面遷移やAPIリクエストという明示的な更新のタイミングがあるネイティブアプリの構造にマッチしないのではという気がしてきた
— きりみん(バーチャル幼女プログラマ) (@kirimin) 2018年4月12日