[Scala]Scala安装以及在IDEA中配置Scala

 

一  Scala简述

Scala (斯卡拉)是一门多范式(multi-paradigm)的编程语言。java

 

这里所谓的范式,指的是编写程序的方式,不一样的编程语言,方式也不尽相同,也就意味着Scala编程语言是融合了多种不一样编程方式的语言。因此Scala语言的设计初衷是要集成面向对象编程和函数式编程的各类特性。编程

二  Scala与Java的关系

创始人马丁·奥德斯基(Martin Odersky)是编译器及编程的狂热爱好者,长时间的编程以后,但愿发明一种语言,可以让写程序这样的基础工做变得高效,简单,且使人愉悦。因此当接触到JAVA语言后,对JAVA这门便携式,运行在网络,且存在垃圾回收的语言产生了极大的兴趣,因此决定将函数式编程语言的特色融合到JAVA中,由此发明了两种语言(Pizza & Scala),这两种语言极大地推进了Java编程语言的发展。且如今主流JVM的javac编译器就是马丁·奥德斯基编写出来的,并被JAVA编程人员普遍的使用,因此Scala语言起源于Java,却推进着Java的发展,它们是相辅相成的。网络

 

正是基于上面的缘由,因此Scala源代码(.scala)会被编译成Java字节码(.class),而后运行于JVM之上,并能够调用现有的Java类库,实现两种语言的无缝对接,所以,对于已经掌握JAVA语言的咱们来说,学习起来必定会略显轻松。maven

 

Scala是一门以java虚拟机(JVM)为目标运行环境并将面向对象函数式编程的最佳特性结合在一块儿的静态类型编程语言。(运行以前必定知道类型是什么)编程语言

三  Scala安装与配置

3.1  安装

Scala须要Java运行时库,安装Scala须要首先安装JVM虚拟机,推荐安装JDK1.8。函数式编程

http://www.scala-lang.org/ 下载Scala2.11.8程序安装包函数

 

根据不一样的操做系统选择不一样的安装包,下载完成后,将安装包解压到安装目录。将scala安装目录下的bin目录加入到PATH环境变量:工具

SCALA_HOME:oop

SCALA_HOME= D:\scala-2.11.8学习

PATH:

在PATH变量中添加:%SCALA_HOME%\bin

安装好scala并配置好PATH环境变量以后,就能够在终端中输入“scala”命令打开scala解释器:

 

注意:该操做Windows和Linux配置流程是同样的。能够参考Java的JDK的配置过程。

到此为止,Scala的安装已经成功。

3.2  Scala的REPL

上面打开的scala命令行窗口,咱们称之为REPL,是指:Read->Evaluation->Print->Loop,也称之为交互式解释器。相似于MySQL的默认客户端工具

在命令行窗口中输入scala指令代码时,解释器会读取指令代码并计算(Evaluation)对应的值,而后将结果打印(Print)出来,接着循环等待用户输入指令(Loop)。

从技术上讲,这里其实并非一个解释器,而是指令代码被快速的编译成Java字节码并被JVM加载执行。最终将执行结果输出到命令行中。

3.3  配置IDEA

1) 打开IDEA工具,如图:点击Configure

 

2) 点击Plugins

 

 

3) 点击Install plugin from disk

 

4) 选择scala的plugins

 

5) 此时会显示一个Scala的条目,在右侧点击Restart IntelliJ IDEA

 

6) 建立Maven项目

建立的maven项目默认是不支持scala的,须要为项目添加scala的framework,如图:

在这里选择Scala后,在右边的Use library中配置你的安装目录便可,最后点击OK。

 

7) 在项目的目录结构中,建立scala文件夹,并标记为source

 

8) 以上配置都完成后,就能够在scala上点击右键建立scala class

 

四  Scala示例

4.1  IDEA运行HelloScala程序

1) 在scala上右键,建立scala object

 

2) 编写代码以下:

object HelloScala {

  def main(args: Array[String]): Unit = {

    println("Hello Scala") // 打印字符串

  }

}

右键Run HelloScala,如图:

 

4.2  Scaladoc

若是想要了解Scala中提供了哪些类,哪些方法,能够参考Scala提供的doc文档

相关文章
相关标签/搜索