CoffeeScript 是一種程式語言,他的程式碼可以編譯成 JavaScript,其語言主要的目的在於讓程式撰寫者可以使用更簡單的方式撰寫 JavaScript。
CoffeeScript 的原則是:「它就是 JavaScript!」,也就是說每一段 CoffeeScript 程式碼都會被編譯成對應的 JavaScript 程式碼,所有的程式在執行時都已經被轉換為 JavaScript 了,不需要在執行時多花費 interpretation 的時間,並且 CoffeeScript 亦可以與現有的 JavaScript 函式庫緊密的結合。另外,其編譯出的程式碼也會自動排版,方便閱讀,而且其程式碼的執行效率通常也比直接撰寫的 JavaScript 高。
sudo apt-get install coffeescript
裝好之後就可以開始使用了,CoffeeScript 的編譯器就叫做 coffee
,他會將 .coffee
檔案編譯成 .js
檔,假設我們有一個 func.coffee
檔案,內容如下:
square = (x) -> x * x cube = (x) -> square(x) * x
要編譯這個檔案,就執行:
coffee -c func.coffee
這樣就會編譯出一個 func.js
檔,其檔案內容就是可以執行的 JavaScript:
(function() { var cube, square; square = function(x) { return x * x; }; cube = function(x) { return square(x) * x; }; }).call(this);
這裡只簡單介紹 CoffeeScript 的概念,詳細的內容可以參考 CoffeeScript 的網站。以下還有一些提供線上免費閱讀的書籍可以參考。
CoffeeScript Ristretto 這本書完整介紹 CoffeeScript 的各種功能,內容豐富且俱有深度,特別是針對函數的部分有比較多的解說,這本書適合的讀者有:
在這本書的網頁上,你可以看到它的售價,但是它也提供免費線上閱讀,由於整本書的內容並不是很多,大約 140 頁左右,個人認為看線上版的應該就可以了。
Smooth CoffeeScript 是一本包含很多練習題的 CoffeeScript 入門書籍,可以讓你透過這些實際的練習快速學習 CoffeeScript。
在這本書的網頁上,你可以選擇以傳統的 PDF 或 HTML 格式下載整本書,但是他還提供了一個更好的閱讀方式就是線上互動是閱讀(Interactive HTML5 Edition),這個版本可以讓你在瀏覽器中一邊閱讀書本的內容,一邊直接修改書中的範例程式碼,並且直接執行然後觀看結果,這樣可以免去複製與貼上範例程式碼的麻煩動作,讓學習更有效率。
這本歐萊禮的 The Little Book on CoffeeScript 大概就不必介紹了吧,不過網頁上的免費版不是最新的版本(最新的要花錢買),縱使如此,這本舊版的內容還是有一些參考價值,像語法介紹的部分,這本書就寫的很簡潔,講解的也很透徹。
CodeSchool 是一個線上學習的網站,雖然它也有很不錯的 CoffeeScript 課程,但是很可惜只有 Level 1 的課程是免費的,如果要看其他的課程就要付費。
參考資料:CodeCondo