scala简介
This commit is contained in:
		| @@ -10,7 +10,7 @@ | ||||
|  | ||||
| ### 1.1 概念 | ||||
|  | ||||
| Scala全称为scalable language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是随着用户的需求一起成长。从技术上讲,Scala是一门综合了**面向对象**和**函数式编程概念**的**静态类型**的编程语言,它运行在标准的Java平台上,可以与所有的Java类库无缝协作。 | ||||
| Scala全称为Scalable Language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长。Scala是一门综合了**面向对象**和**函数式编程概念**的**静态类型**的编程语言,它运行在标准的Java平台上,可以与所有的Java类库无缝协作。 | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -45,7 +45,7 @@ Scala具有高级语言的特定,对代码进行了高级别的抽象,能够 | ||||
|  | ||||
| #### 4. 静态类型 | ||||
|  | ||||
| Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的允许嵌套类的类型系统,还允许使用泛型对类型进行参数化,用交集(intersection)来组合类型,以及使用抽象类型来进行隐藏类型的细节。通过这些特性,我们可以更快地设计出安全易用的程序和接口。 | ||||
| Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的允许嵌套类的类型系统,还支持使用泛型对类型进行参数化,用交集(intersection)来组合类型,以及使用抽象类型来进行隐藏类型的细节。通过这些特性,可以更快地设计出安全易用的程序和接口。 | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -55,11 +55,11 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.1 前置条件 | ||||
|  | ||||
| 首先Scala的运行依赖于Java环境,目前最新的Scala 2.12.x要求你必须安装JDK 1.8或以上版本。 | ||||
| Scala的运行依赖于JDK,Scala 2.12.x需要JDK 1.8+。 | ||||
|  | ||||
| ### 2.2 安装Scala插件 | ||||
|  | ||||
| 首先需要安装Scala插件,使得IDEA支持scala语言的开发。打开 IDEA,依次点击**File** => **settings**=> **plugins**选项卡,搜索Scala插件(如下图)。找到插件后进行安装,并重启IDEA使得安装生效。 | ||||
| IDEA默认不支持scala语言的开发,需要通过插件进行扩展。打开 IDEA,依次点击 **File** => **settings**=> **plugins **选项卡,搜索Scala插件(如下图)。找到插件后进行安装,并重启IDEA使得安装生效。 | ||||
|  | ||||
| <div align="center"> <img width="700px" src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/idea-scala-plugin.png"/> </div> | ||||
|  | ||||
| @@ -67,7 +67,7 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.3 创建Scala项目 | ||||
|  | ||||
| 在IDEA中依次点击 **File** => **New** => **Project**选项卡,然后选择创建Scala—IDEA工程: | ||||
| 在IDEA中依次点击 **File** => **New** => **Project** 选项卡,然后选择创建`Scala—IDEA`工程: | ||||
|  | ||||
| <div align="center"> <img  width="700px"   src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/idea-newproject-scala.png"/> </div> | ||||
|  | ||||
| @@ -75,21 +75,19 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.4 下载Scala SDK | ||||
|  | ||||
| #### 1.方式一(不推荐) | ||||
| #### 1. 方式一 | ||||
|  | ||||
| 此时看到Scala SDK为空,依次点击`Create` => `Download` ,选择所需的版本后,点击`OK`按钮进行下载,下载完成点击`Finish`进入工程。 | ||||
| 此时看到`Scala SDK`为空,依次点击`Create` => `Download` ,选择所需的版本后,点击`OK`按钮进行下载,下载完成点击`Finish`进入工程。 | ||||
|  | ||||
| <div align="center"> <img  width="700px"  src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/idea-scala-select.png"/> </div> | ||||
|  | ||||
|  | ||||
|  | ||||
| #### 2.方式二(推荐使用) | ||||
| #### 2. 方式二 | ||||
|  | ||||
| 方式一是Scala官方安装指南里使用的方式,但是由于下载源并不在国内,所以下载速度会比较慢,且这种安装下并没有直接提供Scala命令行工具。我们在一开始学习的时候,使用命令行去执行简单的代码能更快的看到输出。所以推荐到官方页面下载对应的安装包。 | ||||
| 方式一是Scala官方安装指南里使用的方式,但下载速度通常比较慢,且这种安装下并没有直接提供Scala命令行工具。所以个人推荐到官网下载安装包进行安装,下载地址:https://www.scala-lang.org/download/ | ||||
|  | ||||
| > 官方下载地址:https://www.scala-lang.org/download/ | ||||
|  | ||||
| 这里我的系统是Windows,下载msi版本的安装包后,一直点击下一步安装即可,安装完成后会自动配置好环境变量。 | ||||
| 这里我的系统是Windows,下载msi版本的安装包后,一直点击下一步进行安装,安装完成后会自动配置好环境变量。 | ||||
|  | ||||
| <div align="center"> <img  width="700px"   src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/scala-other-resources.png"/> </div> | ||||
|  | ||||
| @@ -103,7 +101,7 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.5 创建Hello World | ||||
|  | ||||
| 在工程 `src`目录上右击**New** => **Scala class**.创建`Hello.scala`。输入代码如下,完成后点击运行按钮,成功运行则代表搭建成功。 | ||||
| 在工程 `src`目录上右击 **New** => **Scala class** 创建`Hello.scala`。输入代码如下,完成后点击运行按钮,成功运行则代表搭建成功。 | ||||
|  | ||||
| <div align="center"> <img  width="700px"   src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/scala-hello-world.png"/> </div> | ||||
|  | ||||
| @@ -113,7 +111,7 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.6 切换Scala版本 | ||||
|  | ||||
| 在日常的开发中,由于对应软件(如spark)的版本切换,可能导致需要切换Scala的版本,则可以在`Project Structures`中的`Global Libraries`选项卡中进行切换。 | ||||
| 在日常的开发中,由于对应软件(如Spark)的版本切换,可能导致需要切换Scala的版本,则可以在`Project Structures`中的`Global Libraries`选项卡中进行切换。 | ||||
|  | ||||
| <div align="center"> <img  width="700px"  src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/idea-scala-change.png"/> </div> | ||||
|  | ||||
| @@ -123,7 +121,7 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
|  | ||||
| ### 2.7 使用scala命令行 | ||||
|  | ||||
| 采用msi方式安装,程序会自动配置好环境变量。此时直接可以使用命令行工具: | ||||
| 采用`msi`方式安装,程序会自动配置好环境变量。此时可以直接使用命令行工具: | ||||
|  | ||||
| <div align="center"> <img  width="700px"  src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/scala-shell.png"/> </div> | ||||
|  | ||||
| @@ -132,5 +130,4 @@ Scala拥有非常先进的静态类型系统,Scala不仅拥有与Java类似的 | ||||
| ## 参考资料 | ||||
|  | ||||
| 1. Martin Odersky(著),高宇翔(译) . Scala编程(第3版)[M] . 电子工业出版社 . 2018-1-1  | ||||
|  | ||||
| 2. https://www.scala-lang.org/download/ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user