Ruby / Rail のお勉強 1

K講師による Ruby / Rail 講座第一回

- 1 + 1 の + を再定義して、マイナスにしたり、掛け算にしたりできちゃう。えっ、って感じ。JSの ProtoTypeとも違うなあ。

- 新プロジェクトの作成は簡単、テンプレートが充実しているみたい。MVC の VC だけを作るとか、Mを含めて、しかも DBのSchemaの定義までオプション指定できるみたい。

- MVC の M と、DB Schema が疎な結合されているらしい。疎と言っても、何も書かないと DB Schema の properties / fields がそのまま M ですでに認識されているので、何が疎なのか理解できていない。同じ名前で、M側で異なるブツで上書きできるということなのかな。

- .NET だと、MVC の M に Entity Framework を定義して、必要に応じて、 C側で View Model を別に立てて properties を mapping する、というのが定石かと思うが、Rails では、M が 多分 View Model に相当し、DB Schemaが Entity Framework の定義に相当するのかなあ。

- C と V も、暗黙的に接続されている。Cに @abc と変数を定義し、View側で @abc と使える。この引き渡しは、explicit に書く必要ない。

- @は変数宣言、@@はクラス宣言。

- convention に則って書いていくと、驚くほどコード行数が少なさそう。

- router は、ラウターと発音せねばならない。


コメント

  1. MとDB Schemaの疎な結合。まさにその通りでRails CoCの例の1つですね。
    UserというMに対してはusersテーブルと判断
    propertiesはDB Schemaにあるそのテーブルのfieldsを見て判断

    いちいちDB Schemaのfields変更に対してMを変更しなくていい。
    この様にDRYであることはRailsの哲学の一つです。

    返信削除
  2. 暗黙な関係は実に楽で、コード行数がかなり減りますね。

    返信削除

コメントを投稿

このブログの人気の投稿

HiddenFor 要注意

SPA を IIS から流す際の ASP 側のルーティング

Jest の テスト・スクリプトをデバッグする術