結構ざっくりとした説明しか書かれていませんが、他の言語を使ったことがあると用意に理解できると思うので、短い割にちょうど良い程度の説明の仕方だなと思いました。
ただこれまで経験したことのないものがポンとでてくるとちょっと理解に苦しみましたがそこはちゃんとした言語の本を読んで、ここではこんなもんかとさらっと流すほうがいいかなと。
以下感想。
・変数を使う
いたって普通
・四則演算
いたって普通
・すべてがオブジェクト
Java,C系統のようなプリミティブはない。動的型付けだとそうですよね
・文字列
' ' or " "
+ で連結できて楽
#{ } で囲めば文字列の中に変数の値とかをぶっこめる
・メソッド呼び出し
オブジェクト.メソッド Java、C#とかと同じ
BOOLを返すメソッドは最後に ? をつける。いままではisとかhasのプレフィックスつけてたので新鮮。言語としてお作法が決まっているのはいいこと。
メソッド() の()は略していいようだ(ただし()なしで解釈できる場合に限る・・)
・配列
[] の中に型とか気にせずにつっこめる
+で配列もつなげれる
ーで差分をとれる
* で繰り返しができたり
・ハッシュ
{ key => value , , }
・シンボル
軽く理解に苦しむ。
keyに文字列よりはシンボルを使うようだ、書き方がJSONっぽい
・コメント
#
・真偽
true, false, nil
・条件分岐
ここはちょっと気持ち悪い、なぜこうしたし。
elsifをタイポしそうだ・・
switchではない
if
elsif
else
end
case
when
when
else
end
ifの1行での記載は他の言語でもみたことないしかなり読みづらい。これ嫌い。
でもifを前にもってきても{}つけないから余計見づらいのか、なんなのか。
だいたい1行で書く系は可読性犠牲にしているのでしょうがないか。
・繰り返し処理とイテレーション
for文によるfor eachの書き方はC#,Objective-Cとかと同じ。
each do ブロック end でなんぞこれ・・・
each { | | 処理 } のほうが初見では理解できた。eachの引数に{}渡して毎回{}内が実行されるんだろうなと。
ブロックをObjective-Cのblocksと同じと考えることで理解。
Objective-Cだと ^(引数) { 処理 } なので
rubyは | 引数 | 処理 ってことなんすね、たぶん。
0 件のコメント:
コメントを投稿