/note/tech

Railsアプリケーションでフォームをオブジェクトにして育てる

・ドメインに関する処理を Web の入出力と分けるためにフォームオブジェクトを導入した。

・継続的にリファクタリングしコードを育てているうちに、フォームオブジェクトの構造とドメインの構造が一致した。

・その経験から、「フォーム」という語について考察してみた。入力フォームとしてだけでなく、ドメインの形(フォーム)であることを意識すると、エンジニアだけでないチームみんなで同じ視点からソフトウェアを見られた。

記事の中ではフォームオブジェクトと呼んでいるがサービス層と読み替えても問題ない。

WEBアプリ特有のHTTPリクエストやSessionデータを統括して取得→ドメインオブジェクト生成みたいな事がしたい場合、どうしてもサービス層は必要になるんだよな…