hellkite 日記と雑記とメモ。

Shiki Kazamaの駄文と音楽と、時々技術な感じ

Rubyを使ってみた


スポンサーリンク


昔スプリクト言語を学習しようと思ったときの状況

  • Python
    • 日本ではいまいち。
    • でも、海外ではブレイク
  • Ruby
    • 日本ではブレイクの兆し
      • 日本発の言語で参考書が当初から多かった
    • でも、海外では認知されていない


Cと同じように書ける(気がした)ので、Pythonに注目していたが、その後Rubyという言語が存在することを知った。が、海外で知られていない点が気になったのでPythonを勉強することにした。
で、つい最近。こんなページを発見。


バベル案内


Rubyが入ってる?しかもベタ褒め。

私はRubyを、私が知る30か40の他の言語のどれよりも早く学ぶことができた。RubyPerlよりも快適に使えるようになるのに3日しかかからなかった。8年のPerlハッキングの後においてだ。Rubyは非常に一貫性が高く、じきに物事がどう動くか推測できるようになる。そしてほとんどの場合正しく推測できる。それは美しい。そして楽しい。そして実用的だ。

さすがにここまで書かれていたら気になる。調べてみたら、達人プログラマー*1の著者がRubyの本を書いている。

プログラミングRuby―達人プログラマーガイド

プログラミングRuby―達人プログラマーガイド


**追記**
第二版が出てました。

プログラミングRuby 第2版 言語編

プログラミングRuby 第2版 言語編

プログラミングRuby 第2版 ライブラリ編

プログラミングRuby 第2版 ライブラリ編

****

海外でブレイクしていたなんて気づかなかった。Railsが海外で生まれたってのは知ってたけど、ここまでとは。


それで、もう試すしかないな。と。
公式ページに行ってみて、チュートリアルを探す。


あった。


http://tryruby.hobix.com/


なんだこれは?


Rubyをインストールしなくてもブラウザ上で学習できる。すごい。
やってみた感想。


Rubyは本物っぽい。
Pythonは完全なオブジェクト指向言語ではなく、ある処理がメソッドなのかファンクションなのか忘れることがよくあった。けど、Rubyは自然だ。英語で書けばいい。

5.times { print "Odelay!" }

Five times print "Odelay!"
なんてわかりやすい。


一方・・・Pythonだと・・・今すぐ思いついたのは、これだ

print "Odelay!" * 5


Rubyは文章だが、Pythonは数式だ。数式はコンピュータのものだが、文章は人間のものだ。せっかく高級言語を学習するのであれば、人の文章に近いものを選ぶのがいい。Pythonもよかったんだけどな。Rubyと比べてしまったら・・・


ちなみに・・・上の例は有名なRubyのガイドから引用した。
ホワイの(感動的)Rubyガイド
必読だ。これを読んだだけでRubyを好きになりそうだ。でも、笑ってしまうので職場で読むのは危険と思われる。


文法では、ブロックが分かりにくい。上の例の{}で囲まれた部分だ。・・・多分文節をまとめるものなんだろう。実際の英語読解で文節ごとにスラッシュで区切っていくのと同じで。
・・・Pythonでも同じようなリスト内包表記がいまいち理解できなかったが・・・Rubyだと英語と対比させると意外と理解できるかもしれない・・・。


さようなら、Python
そして、Ruby信者が、また一人・・・

*1:素晴らしい本だ!