2022 年 1 月より新しい職場で、はじめて Ruby on Rails(以下、Rails)を使うようになりました。 これまで、PHP の CakePHP、Node.js の Express、Python の Flask の経験がある私ですが、 Rails に、なかなか慣れない苦労がありました。ゆるく、言語化しようと思います。 ちなみに、Ruby もはじめて使いました。
Rails Doctrine
Rails という新しく Web フレームワークを学ぶので、どういう思想で作られたのか知りたいなと思いました。 そこで、下記のページをざっくり読んでみました。
PoLS や CoC といった原則により、プログラマは余計な悩み事が減って良いな〜と思います。 DB のテーブルのカラム名で、post_id なのか postId なのかなんてどうだって良いのは、とても同感です。 ディレクトリ構成も、CoC で決まっているので、論争が生まれることが少ないのかなと思います。
慣れないところ
まず、前提として、私が Ruby、Rails どちらも知らないというのがあります。
- 引数無し関数の括弧省略と、変数の見分けがつかない
Ruby の話で、よくある話と聞いています。 これは、コード読んで、悩みました。
業務で Rails のコードを読んでいると、これは Ruby の関数なのか、 Rails の関数なのか、それとも、独自の関数なのか、いつもわからなくなります。
- マイグレーションって、移行という言葉として思ってた
Rails の文脈だと、マイグレーションって DB 管理の Ruby コードを指すみたいです。 DB マイグレーションって言わないのね〜って、違和感がありました。
最後に
rails って、色々よしなにやってくれて便利〜!と思うこともあれば、 どう動いているんだっけ?と分からなくなることもあるなと思っています。
トレードオフと思うんですが、まだまだ慣れない今日このごろでした。