当前位置:首页 > 后端开发 > 正文内容

Scala简介和装置

邻居的猫1个月前 (12-09)后端开发1389

简介

Scala是一种多范式的编程言语(多范式:多种编程办法的意思。有面向进程、面向对象、泛型、函数式四种程序规划办法),其规划的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运转于Java渠道(Java虚拟机),并兼容现有的Java程序

官网:https://www.scala-lang.org/

Scala以一种简练的高档言语结合了面向对象和函数式编程。 Scala的静态类型有助于防止杂乱运用程序中的bug,它的JVM和JavaScript运转时让您能够轻松地构建高性能体系,并轻松拜访巨大的库生态体系。

为什么要学习scala

  1. 高雅:这是结构规划师第一个要考虑的问题,结构的用户是运用开发程序员,API是否高雅直接影响用户体会。
  2. 速度快:Scala言语表达能力强,一行代码抵得上Java多行,开发速度快;Scala是静态编译的,所以和JRuby,Groovy比起来速度会快许多。
  3. 能融合到Hadoop生态圈:Hadoop现在是大数据事实标准,Spark并不是要替代Hadoop,而是要完善Hadoop生态。JVM言语大部分可能会想到Java,但Java做出来的API太丑,或许想完结一个高雅的API太费力。
  4. spark分布式运算结构是scala言语编写的

发展史
image

scala和java的联系
正常情况下,会scala的程序员都是会Java的,scala是根据java的,所以咱们先搞清楚java,scala和jvm的联系
image

特色
Scala是一门以Java虚拟机(JVM)为运转环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程言语(静态言语需求提早编译的如:Java、c、c++等,动态言语如:js)。

  1. Scala是一门多范式的编程言语,Scala支撑面向对象和函数式编程。
  2. Scala源代码(.scala)会被编译成Java字节码(.class),然后运转于JVM之上,并能够调用现有的Java类库,完结两种言语的无缝对接。
  3. Scala单作为一门言语来看,十分的简练高效,可认为咱们的代码防止一些bug。

salca环境建立

因为scala是根据java来开发的, 编写的java类能够运用javac指令编译成.class文件被JVM加载到内存中履行 ! 那么scala能够经过scalac指令将编写的scala文件编译成.class文件相同被JVM加载到内存中,因而Scala是运转在JVM渠道上的,所以装置Scala之前要装置JDK!

Windows

办法一
拜访Scala 官网 下载Scala编译器装置包,现在最新版别是3.1.3,可是现在大多数的结构都是用2.12.x编写开发的,Spark3.x运用的便是2.12.x,所以这儿引荐2.12.x版别,下载scala-2.12.11.msi后点击下一步就能够了!

办法二
解压装备体系环境变量
image
在windows的控制台输入scala ,显现如下音讯阐明windows环境搞定!

留意 1:解压途径不能有任何中文途径,最好不要有空格。
留意 2:环境变量要大写 SCALA_HOME

Linux

  1. 下载后上传Scala文件到linux上的定目录
  2. 解压
  3. 装备环境变量,将scala加入到PATH中
vi /etc/profile
export SCALA_HOME=/opt/app/scala/scala-2.12.11
export PATH=$PATH:$JAVA_HOME/bin:/usr/java/scala-2.12.11/bin

测验验证scala装置完结,恣意方位输入scala后显现scala的指令行,然后在里面测验两数相加
image

装备Idea

办法一:离线装置
翻开jetbrains得官网:http://www.jetbrains.com后点击Develop Tools后挑选scala
image
然后挑选idea对应得版别下载插件(DownLoad即可)
image
翻开idea后找到左上角得File --》settings --》plugins
image

点击设置挑选Install Plugin from Disk ...后挑选方才下载得插件,点击ok后重启idea即可
image

办法二:在线装置
翻开idea后找到左上角得File --》settings --》plugins--》查找scala后install后重启idea即可

image
image

创立scala项目

  1. 创立一个maven项目
  2. 在src--》main--》创立一个scala包
  3. 右击scala包下挑选Mark Directory as --》 Sources Root

image
4. 右击项目名--》Add Framework Support...

image
5. 进去挑选scala,然后将scala得sdk增加进去,点击ok即可创立scala类了
image

编写scala的类

  1. scala文件都是以.scala结束的
  2. scala中的命名标准和java中的共同
  3. scala中的main办法要写在objec润饰的类中
  4. scala的履行流程和java的相似 , 先编译再履行,因而有编译期的过错推导
  5. scala 代码中的行结尾的分号最好不书写 ,表现其简练
object HelloWorld {
  def main(args: Array[String]): Unit = {
    println("HelloWorld")
    System.out.println("java中的一部分代码在scala中也是能够运转的")
  }
}

扫描二维码推送至手机访问。

版权声明:本文由51Blog发布,如需转载请注明出处。

本文链接:https://www.51blog.vip/?id=247

分享给朋友:

“Scala简介和装置” 的相关文章

重磅更新!微信大众号文章批量下载工具2.0版,轻松导出html、word、pdf文档!

重磅更新!微信大众号文章批量下载工具2.0版,轻松导出html、word、pdf文档!

声明 该软件仅用于学习沟通运用,制止用于商业用处和不合法用处,不然由此发生的悉数成果均与软件作者无关!假如您想要转载下载文章,请必须取得原作者的授权! 本文章未经许可制止转载,私行运用本文解说的软件而导致的任何意外,作者均不担任,若有侵权,请在大众号【程序员王哪跑】联络作者当即删去! 一、前语 咱们...

处理Windows中文用户名导致的Dart AOT编译失利问题

处理Windows中文用户名导致的Dart AOT编译失利问题

Windows中文用户名导致的Dart AOT编译失利   我的微软账户一向运用中文用户名,Windows会把这个用户名作为用户文件夹的称号,并且很难修正. 这就导致但凡放在这个途径下的文件都得有一个带中文的绝对途径. Dart 编译时或许由于这儿的中文字符而犯错.   问题呈现时的操作体系及D...

php向下取整,phpstudy官网下载

在PHP中,向下取整可以通过使用`floor`函数来实现。这个函数会返回小于或等于给定数值的最大整数。例如:```php```在这个例子中,`floor`返回5,因为它是最接近5.6且不大于5.6的整数。 PHP 向下取整函数详解在PHP编程中,向下取整是一个常见的操作,它可以帮助我们获取一个浮点数...

java三元表达式,深入解析Java中的三元表达式

Java中的三元表达式,也被称为条件运算符,是一种简洁的条件表达式。它的基本语法是:```条件表达式 ? 表达式1 : 表达式2;```这里的“条件表达式”是一个布尔表达式,如果这个表达式为真(`true`),那么整个表达式的值就是“表达式1”的值;如果为假(`false`),那么整个表达式的值就是...

java面试宝典,java官网

java面试宝典,java官网

1. JavaGuide 这是一个全面的Java学习与面试指南,涵盖了Java基础、集合、IO、并发、JVM、新特性等多方面的知识。非常适合准备Java面试的朋友使用。 2. 2024最全Java面试八股文 这篇文章分享了一套详细的Java面试手册,涵盖了MyBatis、Zooke...

r语言attach,深入理解R语言中的attach与detach函数

r语言attach,深入理解R语言中的attach与detach函数

在R语言中,`attach`函数用于将数据框(data frame)或列表(list)中的变量自动绑定到全局环境中,使得这些变量可以直接使用它们的名称而不需要前缀。这可以简化代码,使得对数据框或列表中的变量进行操作时更加方便。例如,假设你有一个名为`data`的数据框,其中包含变量`x`、`y`和`...