Perl使い、C/C++使いには参考になるかもしれないRubyの感想
概要
「たのしいRuby」という本を半分くらい読んだので、特徴をまとめておこうという話。
この本を読んだだけなので、だいぶ無責任な内容になってるけど、雰囲気は伝わると思います。
ちょっと古めの本なので、内容に一部、誤りがあるかもしれない。
メモを兼ねた入門……のような構成のつもり。
オブジェクト指向の話
intとかdoubleなどの基本型もすべてクラス。「文字列オブジェクト」なんて言葉もでてくる。
RubyにはStringというクラスがある。
"こういう文字列がStringクラスのインスタンスだお"
"12345".to_i
このようにすれば、Cのatoiみたいなことができる。
コメント
# これはこめんと =begin このへんも コメント =end
数値
数値もオブジェクトなので、以下のようなこともできる。
100.times { print 'この部分が100回くりかえされる' }
ifとかunlessとか
if a == 1 then print 'hoge' elsif a == 2 then print 'fuga' else print 'piyo' end
print 'yes!' if flag
ループ
while, for, untileなんてのがある。C/C++とはちょっと違う感じかもしれない。
変数
- 宣言はいらない
- メンバ変数には@というprefixがつく
- staticメンバ変数には @@ というprefixがつく
配列
arr = [ 1, 2, 3, 4, 5, 6, 7, ]
各要素へのアクセスはarr[0]のように。また、arr.sizeで配列のサイズがわかる。
範囲外の要素にアクセスすると、nilが返るらしい。
モジュール
#include <math.h>
ってやるところを
include Math
って書く。なんかさびしい。
includeしなくても
Math::sin
ファイルアクセス
fh = open( filename) .... fh.close
fh.readでまとめて読める。また、fh.getsで一行ずつ読める。