什么是scala?scala与java对比

时间:2024-04-08 10:41:29

​​​1.什么是Scala

Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台(Java虚拟机),并兼容现有的Java程序。

                          什么是scala?scala与java对比

2.为什么要学Scala

  1. 优雅:这是框架设计师第一个要考虑的问题,框架的用户是应用开发程序员,API是否优雅直接影响用户体验。
  2. 速度快:Scala语言表达能力强,一行代码抵得上Java多行,开发速度快;Scala是静态编译的,所以和JRuby,Groovy比起来速度会快很多。
  3.  能融合到Hadoop生态圈:Hadoop现在是大数据事实标准,Spark并不是要取代Hadoop,而是要完善Hadoop生态。JVM语言大部分可能会想到Java,但Java做出来的API太丑,或者想实现一个优雅的API太费劲。 
  4. 目前java的开发者们在不断对java进行优化,比如在java8提出了lambda表示式,具有scala中函数式编程的特点。也就是说从某种意义上来讲,java的维护者们一定程度了上认同了函数式编程的优越性。    什么是scala?scala与java对比

 

3 Scala和java的区别

Scala集面向对象和面向过程于一身,包含有2者的优点。

Java代码冗长

Scala编写者认为,多写一行代码都是浪费

 

Java单例类需要static、private构造方法

Scala object类就是单例类

 

Java多线程编程复杂,思想是进行共享资源的竞争

Scala 多线程编程极其简单,基于发信的思想

……..

 

4.scala能做什么

Java能做的scala都能做!后台,web后端等。在大数据方面,scala也占有一席之地,很多著名开源框架都用scala编写或者提供scala的编程接口