実践 Rails アソシエーションリファクタリング

設計当初は妥当だと思っていたActiveRecordの関連付け(アソシエーション)、サービスが成長していくにつれて再設計・リファクタリングしたくなっていませんか?
当初は単純な has_many で良かったけど、中間モデルを導入した方がより良い設計になるのに...
ポリモーフィック関連がアンチパターンなのは知っているけど、どうやって直していったら...
そんなことを考えている間にもサービスは成長を続け、レコード数は日々増大し、開発も活発で利用箇所を網羅するのも一苦労...躊躇してしまうのは当然です。

このセッションでは、私が実際にRailsのアソシエーションをリファクタリングしている中で得た、様々なプラクティスをご紹介します。
メンテナンスタイムなしでリファクタリングを進めるためのステップ、リレーションの利用箇所を徹底的に洗い出すハックなど、実践的な知見をお伝えします。

アバター画像:Kei Shiratsuchi
Kei Shiratsuchi

ソフトウェアエンジニア。好きな言語はRubyとRust。好きな小説家は舞城王太郎。現在はANDPADでRailsアプリケーションの大規模リファクタリングに携わっている。