Reactの良い設計パターン掴めてきた気がするので相談、雑談する会
2023/3/14 21:00~
厳密には定めてないですが、1h程度を想定してます。
miyamonzが最近感じた、こんな感じに状態とかコンポーネントを扱うと気持ちがいい、という話をします
& 参加者の方も話したいことあったら共有してもらえると嬉しいです!
miyamonz.iconの発表
20min以内くらいを目安に
その後は、参加者各位で話題提供、相談、雑談しましょう
軽く見た感想mrsekut.icon
可読性と変更容易性が兼ね備えていてすごいmrsekut.icon*2
todoアプリの各columnを「機能」とみなしているのか。
featureに含まれるComponentは汎用性がない、ということをinterfaceで明示されている
AttributeFeatureの設計が難しそう?
optionalなattributeが増えがち、となりそうな気もする
そのとおりmiyamonz.icon
オプショナルの意味の読解に関しては
どう使われてるか読む必要がある
アプリケーションコンポーネントでどう使われてるかを見ればいい
読みに行くのがだるいなら、コメントを書く等すべきかな
ReactNodeの場合は、nullも可(レンダリングしない)なので、意味はわかりやすい
あんまり困らないんじゃないかな、と思ってるmiyamonz.icon
このfeatureという型のプロパティが増えまくる場合は
アプリケーションコンポーネントをしっかり眺めて、概念として異なるものを分ける努力をしましょうmiyamonz.icon
うまくハマる構造を見出すのに訓練が必要
訓練が必要そうなのも少し分かるmiyamonz.icon
でも、別ファイルにちまちま切り出していくと、import文上に登場するモノをプロパティにしてしまえばいいだけなので、そんなに難しくはないのでは、とも思う
pbfの意図を最初に説明しないとなぜこんな実装をしているのか伝わらなそう?
普通にやるdemo1のような概念の切り方になる
headerとTaskItemでバラける
demo2のやり方でやると、機能がなくなった時にファイルを消すだけで良い
posemaniacsは何人のチームで作ってますか?mrsekut.icon
数人
featureの切り方がむずそう
叫ばせるmrsekut.icon
Javaにはpackage privateの機能があるが、Package by Layerにしてると、public/privateにするしかない
Optimistic UI
楽観更新
tRPC
GraphQL