2007年07月31日

Ruby講習

!Rubyの文法実習

*ハッシュ(連想配列)
hoge = { # key => value
}
hoge[key] = value

*条件分岐
if
elsif #Cとは違うので注意
else
end

*case文
case num
when 1
#num = 1
when 2,4,6
#num = 2 or 4 or 6
when 7..9
#num = 7 or 8 or 9

end

*繰り返し
**upto
**times
**each
配列.each{|var|
#var は配列の中のひとつの要素
}
**for

*メソッド
puts,gets,gets.chomp
to_i,to_f,to_s(文字列へ)

*メソッドの作り方
def plus(a,b)
return a + b (return は省略されることがある)
end

*定数
大文字で始まる変数 MAX = 10

*クラス
class Greeting #クラス名は大文字から,名詞でつける
#インスタンスメソッド
def greet #メソッド名は小文字、単語ごとに"_"で区切る、動詞でつける
end
end

**インスタンスの生成
var = Greeting.new
var.greet

attr_accessor "name" #アクセッサ
def initialze(name) #初期化処理のメソッド
@name = name #@インスタンスの中でずっと保存される
end

g = Greeting.new "hoge"

**インスタンス変数
@hoge #@から始まる変数
インスタンスごとに保持している値が違う
**アクセッサ
インスタンス変数をインスタンスの外から使えるようにするための定義

*メソッドのオーバー''ロード''

*クラスメソッド:インスタンスを生成せずに実行できるメソッド
def self.ask_name
return "あなたのネームは?"
end

*クラスの定数

*クラスの継承
class SubClass < SuperClass

*メソッドのオーバー''ライド''
親クラスで定義されているメソッドを再定義する

*組み込みクラス
**Boolean
真:true 偽:false
**シンボル Symbol
文字列だがStringとはちょっと違う
a = "foo"
b = "foo" は別のインスタンスになる(文字列)

a = :foo
b = :foo は同じインスタンスになる(Symbol)

**nil(NilClass)
空を意味するオブジェク
戻り値を返さない関数の場合
配列やハッシュで値がない要素を参照

*ブロック
do 〜 end までのプログラムをオブジェクトにしたもの(このオブジェクトを手続きオブジェクトという)
ブロックに引数を渡すこともできる
{|i| }、 do |i| end

!メモのコツ
プログラム言語の話であれば、最悪キーワードだけメモをしておけば自分で調べなおすことができる。
タグ:ruby
posted by sistailsnow at 11:06| Comment(0) | TrackBack(0) | やってみた | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/49815250
※言及リンクのないトラックバックは受信されません。

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

この広告は1年以上新しい記事の投稿がないブログに表示されております。