Upgrowはshopify製で、Rails wayで進めたものの開発で問題が生じたことから生まれたアーキテクチャー✍️ #ginzarails
2021-04-23 19:30:54ActiveRecordのAssociationが問題だと思えるって発想すらなかったから新鮮だ...しゅごい #ginzarails
2021-04-23 19:33:13Modelが責務を負いすぎてる、ふむふむ 確かに普通にビジネスロジックをコントローラーから移してきただけでめっちゃ太っちゃう...(ノ)´H`(ヾ) #ginzarails
2021-04-23 19:36:39Upgrowのアーキテクチャーの全体像 ※ざっくりModelめっちゃ分割してる感じ✍️ #ginzarails pic.twitter.com/j8DWk42jbg
2021-04-23 19:37:47RecordとRepositoryの実際のアーキテクチャーの様子 RecordはほんとにDB情報、引っ張ってくるだけでRepositoryはそれに必要な操作を与えてる感じ( 雑w #ginzarails pic.twitter.com/SllFMwaNqG
2021-04-23 19:41:04ヴァリデーションをmodelではなくユーザ入力を受け取ってすぐのところでやるのはすごく理にかなっていると思うなあ #ginzarails
2021-04-23 19:44:33ただ、純粋に影響範囲の大きい変更をしようとしたときに分割してるいる分たくさんの場所みにいかないと行けなかったりしてふんわり大変そうな気がしちゃったり..? #ginzarails
2021-04-23 19:44:49Railsの思想とクリーンアーキテクチャの思想の違い #ginzarails pic.twitter.com/r6D9kZ1LlI
2021-04-23 19:51:04Fat Modelそのものは必ずしも悪とは思わないけれど、もう少し役割を他に分担させたいとは思うので、部分的にでもUpgrowを採用できるといいな #ginzarails
2021-04-23 19:52:48