Twitter開源其Scala最佳實踐Effective Scala

banq發表於2012-02-08
http://twitter.github.com/effectivescala/
Scala是Twitter的主要應用程式語言之一,大部分基礎架構是使用Scala編寫,我們有幾個大型庫包在支援應用,Scala是一種大型高效語言, 我們的經驗告訴我們在實踐中要謹慎使用. 它的陷阱在哪裡,哪個特性我們很喜歡,另外哪些應該注意迴避?當我們在實現“純函式風格”時, 又要注意些什麼呢?換句話: 我們已經實踐發現的有利於這個語言的高效使用嗎?這個指南試圖提煉出我們的實踐經驗為隨筆,提供一系列最佳實踐. 我們的Scala使用主要是建立大量形成分散式系統的服務,我們的建議可能有偏見,但是大部分建議可以轉為其他領域,這不是法律文書,有偏差請諒解。

Scala提供了需要工具用於簡化表達,少打字代表少閱讀,少閱讀代表能快速閱讀, 簡潔能夠增加清晰度(大道至簡). 但是簡潔也是一種雙刃劍,會導致其反面效果,導致閱讀者的正確理解度不夠。

綜上所及,Scala作為一個程式語言,你不是在寫Java,Haskell, Python; Scala並不像這些語言中任何一種,為了能夠有效使用這個語言,你必須使用其術語解決你的問題,將java語境帶入Scala是沒有用的,有違背其最初意圖。

閱讀這本指南,我們是假設讀者熟悉下列教程:

Scala School

Learning Scala

Learning Scala in Small Bites
......

待續

相關文章