在這短暫三個月的學習也近尾聲,這次的鐵人賽內容會以rails , ruby 與學習時碰到的專有名詞以心得筆記的方式紀錄成文章,是的不是整理是紀錄,有些文章是剛開始學習的當下整理成的筆記,雖然在發文前有想過是否要修正一下(畢竟菜味太重了),但是...我本來就是菜鳥啊!所以最後決定就保留原始的文章不再調整(當然後面會越來越好的!)
以上 如有錯誤也歡迎留言糾正
Ruby 變數與常數
變數和常數都是一個用來儲存資料和運算的單位,本身並沒有實際的型態,而且在Ruby變數使用前不需要宣告,不僅如此,我們還可以一次指定多個變數,在這點上是不是很特別也很方便呢!
javascript的寫法
ruby的寫法
變數又分成以下四種
區域變數:一般為小寫字母開頭,此變數是有區域性的(class ,def , moduel , block等等),超過指定區域就會找不到
全域變數:我們會在命名前補上$,此變數能被編寫於任何地方,所以使用上相對較危險,一般不建議使用
實體變數:會在變數前加上@,從字面上解讀,就是活在實體裏面的變數,而且每個實體變數彼此不會互相影響,這裡要注意的是,實體變數無法直接從外部取得,所以在拿取之前需要先定義方法才行,但我們可以透過ruby提供的內建方法來解決
1.attr_reader (可讀取)
2.attr_writer (可讀寫)
3.attr_accessor (可讀取+可讀寫)
類別變數 :在變數前加上@@,只要在同一個類別下的實體變數都可以使用,但,只要改變類別變數,就會影響其他實體,所以一般也不建議去使用他
常數
第一個字大寫就是常數,而且在ruby常數是可以被更改,那既然如此 變數跟常數有什麼區別呢? 除了命名方式之外其實他們並沒有太大的區別