Scala 系列(一)—— Scala 簡介及開發環境配置

1、Scala簡介

1.1 概念

Scala 全稱爲 Scalable Language,即「可伸縮的語言」,之因此這樣命名,是由於它的設計目標是但願伴隨着用戶的需求一塊兒成長。Scala 是一門綜合了面向對象函數式編程概念靜態類型的編程語言,它運行在標準的 Java 平臺上,能夠與全部的 Java 類庫無縫協做。git

1.2 特色

1. Scala是面向對象的

Scala 是一種面向對象的語言,每一個值都是對象,每一個方法都是調用。舉例來講,若是你執行 1+2,則對於 Scala 而言,實際是在調用 Int 類裏定義的名爲 + 的方法。程序員

2. Scala是函數式的

Scala 不僅是一門純的面對對象的語言,它也是功能完整的函數式編程語言。函數式編程以兩大核心理念爲指導:github

  • 函數是一等公民;
  • 程序中的操做應該將輸入值映射成輸出值,而不是當場修改數據。即方法不該該有反作用。

1.3 Scala的優勢

1. 與Java的兼容

Scala 能夠與 Java 無縫對接,其在執行時會被編譯成 JVM 字節碼,這使得其性能與 Java 至關。Scala 能夠直接調用 Java 中的方法、訪問 Java 中的字段、繼承 Java 類、實現 Java 接口。Scala 重度複用幷包裝了原生的 Java 類型,並支持隱式轉換。編程

2. 精簡的語法

Scala 的程序一般比較簡潔,相比 Java 而言,代碼行數會大大減小,這使得程序員對代碼的閱讀和理解更快,缺陷也更少。安全

3. 高級語言的特性

Scala 具備高級語言的特定,對代碼進行了高級別的抽象,可以讓你更好地控制程序的複雜度,保證開發的效率。編程語言

4. 靜態類型

Scala 擁有很是先進的靜態類型系統,Scala 不只擁有與 Java 相似的容許嵌套類的類型系統,還支持使用泛型對類型進行參數化,用交集(intersection)來組合類型,以及使用抽象類型來進行隱藏類型的細節。經過這些特性,能夠更快地設計出安全易用的程序和接口。函數式編程

2、配置IDEA開發環境

2.1 前置條件

Scala 的運行依賴於 JDK,Scala 2.12.x 須要 JDK 1.8+。函數

2.2 安裝Scala插件

IDEA 默認不支持 Scala 語言的開發,須要經過插件進行擴展。打開 IDEA,依次點擊 File => settings=> plugins 選項卡,搜索 Scala 插件 (以下圖)。找到插件後進行安裝,並重啓 IDEA 使得安裝生效。工具

2.3 建立Scala項目

在 IDEA 中依次點擊 File => New => Project 選項卡,而後選擇建立 Scala—IDEA 工程:性能

2.4 下載Scala SDK

1. 方式一

此時看到 Scala SDK 爲空,依次點擊 Create => Download ,選擇所需的版本後,點擊 OK 按鈕進行下載,下載完成點擊 Finish 進入工程。

2. 方式二

方式一是 Scala 官方安裝指南里使用的方式,但下載速度一般比較慢,且這種安裝下並無直接提供 Scala 命令行工具。因此我的推薦到官網下載安裝包進行安裝,下載地址:https://www.scala-lang.org/download/

這裏個人系統是 Windows,下載 msi 版本的安裝包後,一直點擊下一步進行安裝,安裝完成後會自動配置好環境變量。

因爲安裝時已經自動配置好環境變量,因此 IDEA 會自動選擇對應版本的 SDK。

2.5 建立Hello World

在工程 src 目錄上右擊 New => Scala class 建立 Hello.scala。輸入代碼以下,完成後點擊運行按鈕,成功運行則表明搭建成功。

2.6 切換Scala版本

在平常的開發中,因爲對應軟件(如 Spark)的版本切換,可能致使須要切換 Scala 的版本,則能夠在 Project Structures 中的 Global Libraries 選項卡中進行切換。

2.7 使用scala命令行

採用 msi 方式安裝,程序會自動配置好環境變量。此時能夠直接使用命令行工具:

參考資料

  1. Martin Odersky(著),高宇翔 (譯) . Scala 編程 (第 3 版)[M] . 電子工業出版社 . 2018-1-1
  2. https://www.scala-lang.org/download/

更多大數據系列文章能夠參見 GitHub 開源項目大數據入門指南

相關文章
相關標籤/搜索