Scala是可擴展語言的縮寫,是一種混合功能編程語言。 它由Martin Odersky創(chuàng)建。 Scala順利整合面向對象和函數(shù)式語言的功能。 Scala被編譯后在Java虛擬機上運行。 許多現(xiàn)有公司依靠Java進行關鍵業(yè)務應用轉向或正在轉向Scala,以提高其開發(fā)生產力,應用程序可擴展性和整體可靠性。
在這里,我們提出了一些要點,說明為什么Scala成為應用程序開發(fā)人員的首選。
Scala是面向對象語言
Scala是一種純粹的面向對象語言,每一個值都是一個對象。 對象的類型和行為由類和特征描述,這將在后面的章節(jié)中進行說明。
類通過子類化和基于靈活的基于混合組合機制進行擴展,作為多重繼承的干凈替代。
Scala是函數(shù)式編程語言
Scala也是一種函數(shù)式語言,每個函數(shù)都是一個值,每個值都是一個對象,所以每個函數(shù)都是一個對象。
Scala提供了一個輕量級的語法來定義匿名函數(shù),它支持高階函數(shù),它允許函數(shù)嵌套,并支持currying,這些概念將在后續(xù)章節(jié)中進行說明。
Scala是靜態(tài)類型的
Scala與其他靜態(tài)類型語言(C,Pascal,Rust等)不同,它不提供冗余類型的信息。 在大多數(shù)情況下,您不需要指定類型,當然減少了不必的重復。
Scala運行在JVM上
Scala代碼被編譯成由Java虛擬機(JVM)執(zhí)行的Java字節(jié)代碼,這意味著Scala和Java具有通用的運行時平臺。因此,可以輕松地從Java遷移到Scala。
Scala編譯器將Scala代碼編譯成Java字節(jié)代碼,然后可以通過scala命令執(zhí)行。scala命令類似于java命令,因為它執(zhí)行編譯Scala代碼。
Scala可以執(zhí)行Java代碼
Scala能夠使用Java SDK的所有類以及自定義Java類,或您最喜歡的Java開源項目。
Scala可以做并發(fā)和同步處理
Scala允許您以有效的方式表達一般的編程模式。它減少了線路數(shù)量,并幫助程序員以類型安全的方式進行編碼。它允許您以不變的方式編寫代碼,這使得應用并發(fā)和并行性(Synchronize)變得容易。
Scala具有與Java完全不同的一組功能,其中的一些如下 -
Scala在所有地方都被使用,重要的是在企業(yè)Web應用程序中使用。下面列出一些最受歡迎的Scala Web框架 -