#contents

#br


*言語の特徴 [#u83006d2]
Rubyがよく分類される言語としての位置づけは、

-純オブジェクト指向言語
-軽量言語
-UNIX指向言語

などが挙げられます。

三つ目の表現はあまり聞きなれないかもしれませんが、
RubyはUNIXで培われた文化を色濃く受け継いでいます。
UNIXコマンド、C言語ライブラリ関数、Perlライブラリルーチンあたりから
借用されたネーミングは数多く、それに馴染んでいる人ならば
容易に動作を予測できるでしょう。
(が、リファレンスはちゃんと見ましょう :-)

また、この特徴を抜きにしても、Rubyはある面では非常に保守的な
手続き型言語です。


*Rubyの導入 [#e68336e0]
[[プログラミング言語/Ruby/RubyInstall]]


*動作を確認 [#t02614c7]
Windowsならコマンドプロンプト、UNIXならシェルに
  ruby -v
と訪ねてみましょう。インストールに成功していれば、
バージョン情報を教えてくれるはずです。


*Hello, world! [#jd458477]
定番ですな。

  print "hello, world!"


*Rubyドキュメントでの慣習 [#k695d865]
メソッドとかを説明文中に表記するさい、
それなりに決まった流儀があります。
知っておくとマニュアルとかが読みやすい鴨。

- Hoge#piyo
- Foo.bar
- Vipper::IQ

上から順に、

- Hogeクラスのオブジェクトが持つpiyoというメソッド
- Fooクラスが持つメソッド(Javaでいうstaticメソッド)
- Vipperクラスが持つ定数IQ

*文法 [#fbed15f8]
などをさらっと流して書く。

[[プログラミング言語/Ruby/RubyMinimum]]


*テキトーな用語集 [#afc6c832]
:Matz|
Rubyの生みの親であるまつもとゆきひろ氏のこと。

:モルモン教|
キリスト教の宗派。Matzはこの信者。よく煽りのネタにされたが、あまりにイジられすぎて、最早2chRubyスレの習慣と化しつつある。

:Duck Typing|
アヒルは、アヒルみたいに振舞うからアヒルとして認識されるんだぜ、という考え。つまりvipperがVipperクラスのインスタンスだからVipperなんだなー、と考える
のではなく、
aori()やtsuri()など、Vipperらしい振る舞いをする(メソッドを持つ)からこそ、そのvipperというオブジェクトはVipperなんだなー、と捉える考え。

:関数|
Rubyに関数なんてものはない。
…が、例えばトップレベルで定義されたメソッドはレシーバなしで
 n = method()
のように書ける。そのようなメソッドを関数と呼び習わす。


*コードリーディング [#xba33bd3]
[[プログラミング言語/Ruby/コードリーディング]]


*周辺ツール/ライブラリ [#de42668e]
[[プログラミング言語/Ruby/RubyToolLibrary]]


*参考書籍・WEBページ [#l944f9dc]
-[[オブジェクト指向言語Ruby:http://www.ruby-lang.org/ja/]]
-[[Rubyリファレンスマニュアル:http://www.ruby-lang.org/ja/man/?cmd=view;name=Ruby%A5%EA%A5%D5%A5%A1%A5%EC%A5%F3%A5%B9%A5%DE%A5%CB%A5%E5%A5%A2%A5%EB]]
-[[RAA - Ruby Application Archive(英語):http://raa.ruby-lang.org/]]
-[[Rubyist Magazine るびま:http://jp.rubyist.net/magazine/]]
-[[逆引きRuby:http://www.namaraii.com/rubytips/]]
-[[プログラミング入門 - Rubyを使って -:http://www1.tf.chiba-u.jp/~shin/tutorial/]]

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS