お手伝いしているメドピアさんのブログに、Railsのコード可読性を保つための知見の一つであるform objectについて寄稿させていただきました。
form objectを使ってみよう - メドピア開発者ブログ
最近は技術顧問として複数社のエンジニアに対して、主にRailsアプリケーションを可読性を保ちつつ作るための知見を伝えるような仕事をやっています。具体的な仕事内容については別エントリで書くかもしれません。
寄稿した内容の補足
良い記事なんだけど、ARのvalidationをFormに移すのは一長一短あると思っていて、常にFormオブジェクトを経由してレコード生成する様に徹底できていればいいんだけど、そうでない使い方されるとたまに整合性で事故る。 https://t.co/NvI3Q0oEF6
— 夜行性のフレンズ じょーかー (@joker1007) 2017年5月9日
たしかにARのvalidationを移す場合はチーム内でルール決めて徹底しないとダメですね><そこまで行かなくても、AR使わないときにだけでもform object使うようになってくれれば僕はだいぶ幸せです 😇 https://t.co/CDcl6yfIfc
— willnet (@netwillnet) 2017年5月9日
form_tag使ってるコードに突っ込み入れる回数減らしていきたいんですよ https://t.co/j5IwrAKwYk
— willnet (@netwillnet) 2017年5月9日
エントリ後半の、「Active Recordモデル中のvalidationやメソッドをform objectに移してモデルをスリムにする」話はジョーカーさんのツイートのように、チーム全体で徹底できていないとダメなので取り入れるには若干のハードルがあります。
ただ、エントリ前半のActive Recordを使わないケースでform objectを使うのはデメリットがほぼないはずなので全国的に広まってほしいなという気持ちです :pray:
寄稿先のエントリでも書きましたが、複数の会社で同じことを何度も説明するのは大変です><。説明回数を減らすために、他の知見もこのブログやお手伝い先のブログなどで積極的にまとめていくつもりなのでご期待ください*1。もし、うちにも寄稿してほしい!という会社さんありましたらご連絡ください*2。