Ruby on Rails チュートリアル 第4章 まとめ
目次
- 4.1 動機
- 4.2 文字列とメソッド
- 4.3 他のデータ構造
- 4.4 Rubyにおけるクラス
- 4.5 最後に
4.1 動機
- Rubyの基礎を勉強
- カスタムヘルパーの作成
ページタイトルの編集
ページ内にのprovideがなくても表示できるように修正
テストを修正
4.2 文字列とメソッド
rails consolで勉強
事前準備
irbnの設定変更(~/.irbrcを作成)コメント
#始まりはコメント(この行はコメントになる)文字列
「"」でくくる 例:"rails"
変数に代入 例:r = "rails"
出力 print puts
式展開 「"#{変数}"」例:"#{r}" -> "rails"
「'」でくくると式展開をしない。例:'#{r}' -> '#{r}'オブジェクト
.length
.empty?
if bool ~~ elsif ~~ end
!(bool && bool || bool)
.to_s
後続if 例:puts "if" if trueメソッドの定義
def method_name(ste = '')
~~~~
end
メソッドのreturnがない場合「最後の評価の式が返る」
4.3 他のデータ構造
- 配列と範囲演算子
配列
String.split(' ') ' 'で分割して配列に
Array[0] Array[1] ・・・Array[-2] Array[-1]
Array.first Array.second ・・・ Array.last
Array.length
Array.include?(42)
Array.sort <- Arrayのソート結果
Array.sort! <- Array自体が変わる
Array.push('a')
Array << 'a'
Array << 'a' << 'b'
Array.join ,Array.join(',')範囲
0..9
('a'..'z').to_a <-配列に
(0..9).to_a[5..-2]
%w[a s d f] <-スペース区切りで配列にブロック
Renge.each{|i| ~~ }
Array.each do |num|
num
end
number.times{ }
%w[A B C].map(&:downcase)ハッシュとシンボル
{"name"=>"tanaka" ,"MSN" => "08044444444"}
{:name=>"tanaka" ,:MSN => "08044444444"}
{name:"tanaka" ,MSN:"08044444444"} <-上と同じ- inspectメソッド
4.4 Rubyにおけるクラス
継承
class Word < String
def palindrome?
self == reverse #<-self == self.reverse
end
endクラス
class User
attr_accessor :name, :email <-ゲッターセッターができる def initialize(attributes = {})
@name = attributes[:name]
@email = attributes[:email]
end
def formatted_email
"#{@name} <#{@email}>"
end
end
4.5 最後に
書いてある通りに。