2009年07月 / 06月≪ 12345678910111213141516171819202122232425262728293031≫08月

2008.11.21 (Fri)

本日のお勉強(Ruby)

081121_ruby.gif今日はRailsの勉強をちょっと休んで、Ruby本体のお勉強。
Yuguiさん著の「始めてのRuby」が届いたのでね。

この本、表紙から分かるようにオライリーの本ですが、オライリーの「初めての○○(Learning ○○)」の例には漏れていて、翻訳ではなく書き下ろしです。

まだ少ししか読んでないけど、ごく個人的なメモを。

▼shebang
 以前も書いたshebang(シェバング)について記述がありました。

 UNIXシステムやGNU/Linuxシステムではshebangを頼りに、ソースコード自体を実行可能なプログラムにすることができます。

 なるほど。このソースに実行可能属性(chmod +x)すると、以下で実行できるようになる、と。
$./hello.rb

▼::
 Javaから来た私が慣れない記法に「::」があります。

 「Stringオブジェクトのインスタンスメソッドeach_byte」のことを「String#each_byte」と書く慣習があります。また、「Timeクラスのクラスメソッドnow」のことを「Time.now」あるいは「Time::now」と表します。

 なるほど! クラスメソッドを表す時にも使うんですね。でも、継承の場合はちょっと違いますよね。
class Transcript < ActiveRecord::Base

 ここで使われている「::」は、やはりスコープを表していると思います。

▼コードゴルフ
 標準入出力への書き出しについてprintf、putsなどがよく使われていますが、pメソッドも紹介されています。irbと共に重宝するが、デバッグや学習、コードゴルフ以外に使うのはお行儀が悪いとのこと。コードゴルフというのは初めて聞きましたが、「課題に対しての実装コードの短さを争う協議」ですって。面白いですね。

▼シンタックスシュガー
 シンタックスシュガーという表現がよく出てきます。以前、Matzさんの連載では「ブロックは単なるシンタックスシュガー(文法的なお化粧)」と訳されていました。比較的、自由な表記が可能なRubyならでは、ってことになるのでしょうか。


EDIT  |  20:48  |  しごと(技術)  |  TB(0)  |  CM(0)  |  Top↑

*Comment

コメントを投稿する

URL
COMMENT
PASS  編集・削除するのに必要
SECRET  管理者だけにコメントを表示
 

*Trackback

この記事のトラックバックURL

この記事へのトラックバック

 | BLOGTOP |