[Rails]Rubyのカベ-シンボルって何だ?

久々にRoRネタで。

Javaプログラマで、Ruby初心者であるワタシがハマったRuby(とRoR)の仕様について、メモ残そうかと。

Railsのチュートリアルをいくつかコナして、「さ、何か作ってみるか!」と意気込んでscaffoldした・・・までは良かったんですが、そこでパッタリと手が止まってしまいました。

書けん・・・。チュートリアルに沿ってやってたときは、分かった気になってただけだったのか?

何が分からないって、Rubyのソースがイマイチ読めない。Railsの仕組みは理解したつもりなんですが、やっぱそれを実装しているRubyの言語仕様も分かってないとダメだと、最近気付きました。感覚で読めるかと思ったんですが、ワタシのアタマも大分固くなってきたんでしょうか。お恥ずかしい限りで・・・。

で、恐らくこれはワタシだけじゃなく、Javaプログラマ:特にCOBOLチックな基幹系のJava中心にやってた人たちは、みんなハマるんじゃないかと思いまして。

”裾野を広げる”と言っている以上、先頭切って恥をかくのもワタシの仕事・・・と勝手に思いまして、小ネタをここにUPしていくことにします。

具体的に「こりゃ勉強しないと」と思ったのは、

  • シンボル
  • ブロック
  • 特異メソッド
  • Mix-in(≒JavaのInterface?)

あたりでしょうか。

今回は、まずは「シンボル」から。

ハッシュのキーに使ったり、Railsでは頻繁に登場します。

ですが、どのRails本読んでも、「定数のようなもの」とかしか書いてなくて、どうもイメージがつかめません。

しかも、ハッシュのキーをシンボル(:Hoge)じゃなくストリング(’Hoge’)にしても動いちゃう(※)ので、ますます分からなくなってしまいまして。

(※)これはRailsクンの仕様みたいです。

で、ググったら、同じような疑問を持った人がチラホラ。

こちらの記事(Rubyのシンボル(:コロン))を読んでだいたい理解できました。

でも、使いどころがまだモヤモヤしてたんですが、こちらの説明 でかなりスッキリしました。

定数の値に深い意味はなくて、名前を付けることだけに意味がある場合は、Symbolを使えばいいわけです。

と。なるほど。

慣れるしかないですね。目指せ、Rails脳!!

2 thoughts on “[Rails]Rubyのカベ-シンボルって何だ?

  1. 僕もなかなかスクリプト脳にならなくて悪戦苦闘中です。
    同じく感覚でなんとかなるだろうと思ってましたがダメですね。。
    お互いがんばりましょう。

  2. > tech note さん

    コメントありがとうございます。
    tech note さんのブログ、他の記事もとても参考になることが多くて勉強になります。これからもよろしくおねがいします。

コメントを残す

メールアドレスが公開されることはありません。