Scala-01:简介和安装
一、Scala简介
1:Scala是什么
在学习一门语言之前一定要弄清楚这门语言是什么,能干什么,为什么要学?
为什么要学Scala:
在大数据开发领域,Spark可以算得上是重中之重的学习内容,作为新一代内存级的计算框架,Spark就是用Scala编写的,所以想要学好Spark,就要先了解编写其使用到的Scala是什么套路,这样可以更好的继续接下来的学习。
而且,近些年来,大数据的兴起,Spark也是应运得到了关注,这也极大的推动Scala的发展。
2:Scala的发展?
联邦理工学院的马丁·奥德斯基(Martin Odersky)于2001年开始设计Scala。
马丁·奥德斯基是编译器及编程的狂热爱好者,长时间的编程之后,希望发明一种语言,能够让写程序这样的基础工作变得高效,简单。所以当接触到Java语言后,对Java这门便携式,运行在网络,且存在垃圾回收的语言产生了极大的兴趣,所以决定将函数式编程语言的特点融合到Java中,由此发明了两种语言(Pizza & Scala)。
Scala和Pizza的发展也在一定意义上推动的Java的迭代更新,其新颖和方便的语法特点和细节,有很多都被Java作为参考:
JDK5.0的泛型、增强for循环、自动类型转换等,都是从Pizza中引入的新特性
JDK8.0的类型推断、Lambda表达式就是从Scala引入的新特性。
3:Scala和Java的区别和联系
Scala和Java相互依靠和参考引入,就会使得在学习Scala的时候很容易与Java搞混淆,所以搞清楚Scala和Java以及JVM之间的关系很重要。
Java | Scala | |
---|---|---|
代码上 | Java的语法 | 1、部分使用了Java的语法 2、部分是Scala特有的语法 3、对Java的类库做了包装 |
编译器上 | Javac编译器 | Scalac编译器 |
SDK | Java的SDk | 1、Java的部分类库 2、Scala特有的类库 3、对Java的类库做了包装 |
运行环境 | JVM for Windows JVM for Linux JVM for Unix | JVM for Windows JVM for Linux JVM for Unix |
字节码文件 | .class字节码文件 | .class字节码文件 |
4:Scala语言的特点
Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言(静态语言需要提前编译的如:Java、c、c++等,动态语言如:js)。
1)Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。(多范式,就是多种编程方法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法。)
2)Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。
3)Scala单作为一门语言来看,非常的简洁高效 。
4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥
德斯基也加入了自己的思想,将函数式编程语言的特点融合到JA V A中, 因此,对于学习过Java的来说只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。
二、Scala安装
1:Scala安装包下载
https://www.scala-lang.org/
可以登录官网下载Scala安装包,下载 .zip压缩包
2:解压Scala压缩包
将Scala压缩包解压,可以自己新建一个文件夹,将压缩包解压到此文件夹中,注意,解压路径不可以有中文,因为Scala需要配置环境变量
3:配置环境变量
一下在Win7中示范:
打开 我的电脑-高级配置-环境变量
在系统环境变量中新建SCALA_HOME
SCALA_HOME=你的Scala路径
注意此时的Scala路径要写bin目录的上一级,即是到Scala目录即可
添加Path
Path=%SCALA_HOME%\bin
以上就配置好了环境变量,点击应用,然后确定即可
4:测试是否安装成功
打开终端命令窗口
命令:win+R
然后再窗口中输入:scala
5:Scala小测试
简单的实现两数相加
定义变量
val a:Int = 20
在Scala中末尾不用加”;”