1. 程式人生 > >Scala.js:將Scala編譯為JavaScript的編譯器

Scala.js:將Scala編譯為JavaScript的編譯器

Scala.js是一款將Scala程式碼編譯為JavaScript程式碼的編譯器,該編譯器支援全部Scala語言特性。藉助於Scala.js,開發者能夠使用Scala開發從前端到後端的Web應用,而且Scala.js還帶來了在伺服器和客戶端之間複用程式碼的可能性。Scala.js值得關注的特性包括:

  • 支援Scala語言的所有特性,包括巨集(macros),僅有一些語義的不同
  • 同JavaScript程式碼具有良好的互操作性,如Scala.js程式碼中以型別化或者非型別化方式使用jQuery和HTML5、建立Scala.js物件和JavaScript程式碼中呼叫物件的方法;
  • 能夠使用Scala IDE進行編碼;
  • 能夠生成一個原始碼和生成程式碼的對映,從而提供了Scala.js和Scala二者之間平滑過渡的除錯經歷,在瀏覽器中單步除錯Scala程式碼且且支援原始碼間的對映;
  • 集成了來自谷歌、用於生成緊湊且高效能程式碼的工具Closure Compiler,為產品以生成最小的程式碼;
  • 生成非常高效的JavaScript程式碼,參考基準測試資訊

Scala.js已形成了一個良好的生態圈,生態圈內容包括:

Scala.js基於Scala許可協議釋出,程式碼託管在GitHub,當前最新版本是0.6.2。有關Scala.js的API、使用指導和參考指南,請讀者參考官方提供的相關文件。此外,官方還提供了使用教程

開發文件以及在瀏覽器中檢視執行效果的線上工具