idea搭建scala环境_Scala 简介以及安装手册

Scala

Scala简介

官网:http://scala-lang.org/

Scala是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性.

Scala运行在Java虚拟机上,并兼容现有的Java程序。

Scala源代码被编译成Java字节码,所以它可以运行于JVM之上,并可以调用现有的Java类库。

函数编程范式更适合用于Map/Reduce和大数据模型,它摒弃了数据与状态的计算模型,着眼于函数本身,而非执行的过程的数据和状态的处理。函数范式逻辑清晰、简单,非常适合用于处理基于不变数据的批量处理工作,这些工作基本都是通过map和reduce操作转换数据后,生成新的数据副本,然后再进行处理。

像Spark,Flink等都是采用Scala开发的,所以学习好大数据,掌握scala是必要的。

Scala与Java的关系

1、都是基于JVM虚拟机运行的,

Scala编译之后的文件也是.class,都要转换为字节码,然后运行在JVM虚拟机之上。

2、Scala和Java相互调用

在Scala中可以直接调用Java的代码,同时在Java中也可以直接调用Scala的代码

3、Java8 VS Scala

1)Java8(lambda)没有出来之前,Java只是面向对象的一门语言,

但是Java8出来以后,Java就是一个面向对象和面向函数的混合语言了。

2)首先我们要对Scala进行精确定位,从某种程度上讲,Scala并不是一个纯粹的面向函数的编程语言,有人认为Scala是一个带有闭包的静态面向对象语言),更准确地说,Scala是面向函数与面向对象的混合。

3)Scala设计的初衷是面向函数FP,而Java起家是面向对象OO,现在两者都是OO和FP的混合语言,是否可以这么认为:Scala= FP + OO,而Java =OO + FP?

由于面向对象OO和面向函数FP两种范式是类似横坐标和纵坐标的两者不同坐标方向的思考方式,类似数据库和对象之间的不匹配阻抗关系,两者如果结合得不好恐怕就不会产生1+1>2的效果。

面向对象是最接近人类思维的方式,而面向函数是最接近计算机的思维方式。如果你想让计算机为人的业务建模服务,那么以OO为主;如果你希望让计算机能自己通过算法从大数据中自动建模,那么以FP为主。所以,Java可能还会在企业工程类软件中占主要市场,而Scala则会在科学计算大数据分析等领域抢占Java市场,比如Scala的Spark大有替代Java的Hadoop之趋势。

语言特点

1.可拓展

面向对象

函数式编程

2.兼容JAVA

类库调用

互操作

3.语法简洁

代码行短

类型推断

抽象控制

4.静态类型化

可检验

安全重构

5.支持并发控制

强计算能力

自定义其他控制结构

Scala解释器和REPL

1、Scala解释器读到一个表达式,对它进行求值,将它打印出来,接着再继续读下一个表达式。这个过程被称做读取--求值--打印--循环,即:REPL。

从技术上讲,scala程序并不是一个解释器。实际发生的是,你输入的内容被快速地编译成字节码,然后这段字节码交由Java虚拟机执行。正因为如此,大多数scala程序员更倾向于将它称做“REPL”

函数和方法的区别

方法是对象里面定义的方法class定义 方法和对象有关

函数是static里面定义的,object里面定义的 函数和对象无关

没有返回值的函数叫过程

Scala的安装

scala安装前需配置java环境

JAVA_HOME=/xxx/java/jdk

path=/xxx/java/jdk/bin

CLASSPATH=%JAVA_HOME%/lib(在jdk1.5之后可以不用配置)

scala的压缩包,全部下一步即可

校验是否安装成功,进入命令提示符,输入scala,出现下图即为成功

56188d4ba3f3135bc2a170ffcb0072d2.png

安装完成之后会在path中出现环境变量

2c8d0976deac4d1be16fb82034a9aee4.png

推荐使用win10安装,win7安装时会出现错误

第一种

出现sacla不是外部命令

查看系统环境变量,是否全部存在

d0498ce8d554df959d5df067a2fcc765.png

第二种

a19623e0f4182916ca386ded47578919.png

scala的简单使用

创建文件文件的拓展名为.scala

object HelloWorld{def main(args:Array[String]):Unit={println("helloWorld")}}

然后编译: scalac 文件全名

运行 scala 类名

5e9251690c117208e501b62475c7a107.png

可以不用编译

直接运行 scala 文件全名

idea添加插件scala插件

819fd6e21e11e2f98ff496d889841bb3.png

搜索scala插件

92407b40d9c6d57d1165f2d40c9c3207.png

导入scala压缩包,之后会重启

8670efbe92498fab41b967d16e5347eb.png

第一次用IDEA创建scala项目

1f22bcbaa1f9daeec92da783446a48aa.png

选择scala选项,如果没有先去安装scala插件

d32cde43acd90a7fa011f6e9100913bc.png

然后出现该界面

6f9e57148f8b5875a5a3551d1b7b8acf.png

点击创建出现该界面,点击下方的browse

b041ee3a26577d709372856a5b938f4b.png

然后,查找scala的安装路径,点击ok

e8530c27df175b9ae73914b14e68d5eb.png

最后点击finish结束

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值