Ginza.rb 第38回

勤務先で行われている Rails 勉強会からはしごして行ってきた。今月は ROM (Ruby Object Mapper) の話。

ginzarb.doorkeeper.jp

今回も y-yagi さんの発表がとても整理されていて分かりやすかった。

Repository による抽象化を行うことで、具体的な永続化方式を透過的に扱えるようにしている所謂『中間層を設けることで問題を解決する』パターンに属するのかなと思っている。ベタなこのパターンの弱点というか扱いづらさは、具体的なオブジェクトを組み立てるコンポーザー的オブジェクト (今回だと Repository だと思っている) の組み立てが面倒という点があるかなと思っている。このあたり Convension over Configuration なりの Zero Configuration がないとオブジェクトの組み合わせを覚えたり作ったりのコストが大きそうという感想を持った。

ROM の特徴となるバラエティある永続化方式について、実際のところ rom-sql 以外はまだ実践投入にははやそうな印象とのことで、抽象化によるプラガブルな切り替えという設計思想に実装が追いついていない感はあった。

後半はいくらか時間があったとのことで、Increments ++ Tech Talk で発表されていた willnet さんによる Rails 5.x の発表。

speakerdeck.com

今後、Rails から jQuery が外されるということで、かつて Prototype.js から jQuery へ変遷して今回はさらに次世代 JS という流れに進んで行くようきちんと時流を読んだ動きになっていて、守りに入らない感じがいいなと改めて思ったのでした。