閱讀筆記所有文章

《為你自己學 Ruby on Rails》閱讀筆記:生態圈及簡介

為什麼選擇 Ruby

引用一句已故大師 Alan Perlis 的話:

A language that doesn’t affect the way you think about programming is not worth knowing.

中文意思是:

「如果某種程式語言不會影響你寫程式的思考方式的話,那就不值得去學習它。」

什麼是 Ruby ?

Ruby 是一種泛用的腳本式程式語言,從資料分析、繪圖、3D 建模、系統管理、遊戲開發等程式都可以使用 Ruby 來開發,而且它的年紀已經超過 20 年了。

什麼是 Rails?

Rails 是一款使用 Ruby 程式語言所開發出來的網站開發框架(Web Framework),作者是名為 David Heinemeier Hansson(簡稱 DHH) 的丹麥人。

一開始的時候大家會把 Ruby on Rails 簡稱為「RoR」,不過因為「RoR」實在不好發音,後來大家開始慢慢的改稱之 Rails。

Ruby 跟 Rails 之間的關係

如果打個比方的話,大家也許看過或玩過樂高(Lego)積木,Rails 就像是一塊一塊的積木,可以讓你很快的把城堡蓋起來;而 Ruby 則像是積木的原料(塑膠),沒有原料就不會有這個積木。

Ruby 是一款設計很特別、寫起來也很有趣的程式語言,如果能花時間更去深入 Ruby 這個程式語言特別的點,相信在寫 Rails 的時候可以寫出更漂亮、簡潔、有效率的語法。

Rails 設計哲學

在 Rails 世界有兩個主要的設計哲學:

  1. 慣例優於設定(Convention over Configuration, CoC)
  2. 不要做重複的事(Don’t Repeat Yourself, DRY)

慣例優於設定(Convention over Configuration, CoC)

「慣例」就像是不成文的規定,當遇到某種情況的時候我們會用特定的方式來解決問題,或是該把某個功能的程式碼放在什麼地方,不過即使不照著慣例寫,也有別的方法可以達到一樣的目的。

在 Rails 裡有相當多這樣的慣例,例如像是專案的目錄結構、資料表的關連及命名等,順著 Rails 的慣例,程式碼可以變得更簡潔、優雅。

甚至可以說在學習 Rails 的過程,除了學習 Ruby/Rails 的語法之外,也是在學習 Rails 的慣例。

不要做重複的事(Don’t Repeat Yourself, DRY)

如果有些程式碼或結構一直重複的出現,就應該把重複的部份抽離出來,整理成為一個方法、類別或模組。

這樣不僅可以重複使用,也會因此變得比較好維護,有發生問題也比較容易被發現。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Back to top button