高見龍

iOS app/Ruby/Rails Developer & Instructor, 喜愛非主流的新玩具 :)

Ruby 語法放大鏡

image photo by davidd

大家在學習 Ruby 或 Ruby on Rails(以下簡稱 Rails)的時候,難免會有一些看不懂或是有一些不知道怎麼來的神奇語法,希望可以藉由這一系列的短文幫大家更容易的了解到底 Ruby/Rails 是怎麼回事。

預計會有以下的文章(持續更新中):

Ruby 相關:

  1. attr_accessor 是幹嘛的?
  2. 類別跟模組有什麼不一樣?
  3. 有時候會看到有兩個冒號寫法(例如 ActiveRecord::Base)它是什麼意思?
  4. 為什麼 Hash 好像有不同的寫法?
  5. 有的變數變前面有一個冒號(例如 :name),是什麼意思?
  6. gem install 之後,那些 gem 安裝到哪裡去了?
  7. 你知道 require 幫你做了什麼事嗎?
  8. 有的變數前面有 @ 符號(例如 @users ),這是什麼意思?
  9. 想要學 Ruby 該看哪些書?

Rails 相關

  1. 為什麼 link_to 這個 view helper 的參數個數可長可短?
  2. 為什麼 2.days.ago 在內建的 irb 會找不到這個方法? 這不是 Ruby 語法嗎?
  3. 如果想要找某個方法的定義,該怎麼找?
  4. 常在 controller 裡看到 before_action,它是一個方法嗎? 跟一般用 def 定義的有何不同?
  5. 常在終端機裡下 rake db:migrate 指令,這個 rake 是什麼,後面那個 db:migrate 又是怎麼回事?
  6. 在 Gemfile 裡看到 gem 'sass-rails', '~> 4.0.3' 或是 gem 'uglifier', '>= 1.3.0' 這樣的寫法,那個 ~>>= 各是代表什麼意思?
  7. 常有時候會需要在指令面前加上 bundle exec,這有加沒加有什麼分別?
  8. 在 Rails 專案中,有個檔案叫 schema.rb,它是做什麼的?
  9. 有一個 Gemfile 了,為什麼還有個 Gemfile.lock? 這個檔案是幹嘛的?
  10. Strong Parameters 是什麼用途?
  11. 自己寫了一些的 view helper,有辦法也在 controller 裡使用嗎?
  12. 在 application controller 裡看到的 protect_from_forgery 是什麼?
  13. 為什麼 model class 看起來空空的,但怎麼有那麼多好用的方法?
  14. 想要學 Rails 該看哪些書?

以上,有的是關於 Ruby 的,有的是關於 Rails 的(嚴格說來其實都是 Ruby 的問題) 如果想到還有其它的會再繼續補充,或是大家有什麼想要知道也可以直接來信討論或是在本篇底下留言 :)

Comments