2011-06-05 155 views
27

我真的很喜歡在小項目中使用CoffeeScript(1.1.1),並且迄今爲止效果很好。然而,在更廣泛的環境中使用它之前,我希望聽到關於在生產中使用它的第二個意見。在生產環境中使用CoffeeScript

所以我的問題是:

  • 如何穩定是語言本身?
  • 我是否需要觀察即將發生的將會破壞我的代碼的更改?
  • 如果對上述問題的答案是肯定的:舊版本支持多好?
  • 是否有一個穩定的(僅錯誤修復)和一個單獨的開發分支?
  • 如果您已經在您的產品/網站/ etc中使用過CoffeeScript,請描述它的使用範圍和您的整體體驗。

謝謝!

注意:我已經聽說「CoffeeScript支持將包含在Ruby on Rails 3.1版中」。 (維基百科),因爲來自Rails社區的額外支持,這非常棒。

+0

相關:http:// stackoverflow。com/questions/2954557/has-anyone-used-coffeescript-for-a-production-application – 2011-09-09 19:09:22

回答

18

語言一直穩定在過去六個月(1.1.1基本上是1.0以及補丁)。這不能保證未來的穩定性,但我不認爲my book很快就會完全過時。

我想說避免版本問題的最佳做法

  1. 確保您記錄的CoffeeScript的版本,你的項目,以書面和
  2. 編譯到JS在該版本並保持JS存儲的地方
  3. 擁有良好的測試覆蓋(在塞繆爾·亞當斯的話說:總是一個很好的決定

這樣,當新版本的CoffeeScript被髮布時,你有一個JS備份來防止你的CoffeeScript代碼被破壞。突然改變是一種痛苦,但它幾乎是所有語言的共同痛苦,但 JavaScript只要求一位最近從1.8過渡到1.9的Rubyist,或者仍在將Python 2代碼遷移到Python 3的Pythonista。

我可以給你的建議,以防止你的代碼在CoffeeScript版本更改下破壞是爲了避免語法邊緣情況。例如,用於表示func {a:b, c:c},現在它意味着func {a:b}, c。這是一個進步(舊的行爲被認爲是一個錯誤),但有些人卻被它忽視了。因此,只要有一絲不明確的地方,請使用明確的標點符號;無論如何,它使得代碼更具可讀性。

Jeremy將不得不評論stable/master區別,因爲兩個分支都存在,但stable從4月(1.1.0之前)開始尚未更新。