什么是Scala

一.概述

  1. 为什么要学习scala
    Scala是一门多范式的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。
    Scala运行在Java虚拟机上,并兼容现有的java程序。
    Scala源代码被编译成java字节码,所以它可以运行于JVM之上,并可以调用现有的java类库。
  2. Scala发展历史
    联邦理工学院的马丁·奥德斯基(Martin Odersky)于2001年开始设计Scala。
    马丁·奥德斯基是编译器及编程的狂热爱好者,长时间的编程之后,希望发明一种语言,能够让写程序这样的基础工作变得高效,简单。所以当接触到JAVA语言后,对JAVA这门便携式,运行在网络,且存在垃圾回收的语言产生了极大的兴趣,所以决定将函数式编程语言的特点融合到JAVA中,由此发明了两种语言(Pizza & Scala)。

Pizza和Scala极大地推动了Java编程语言的发展。
*jdk5.0 的泛型,for循环增强,自动类型转换等,都是从Pizza 引入的新特性。
*jdk8.0 的类型推断,Lambda表达式就是从Scala引入的特性。
Jdk5.0和Jdk8.0的编辑器就是马丁·奥德斯基写的,因此马丁·奥德斯基一个人的战斗力抵得上一个Java开发团队。
3. Scala和Java的关系
一般来说,学Scala的人,都会Java,而Scala是基于Java的,因此我们需要将Scala和Java以及JVM 之间的关系搞清楚,否则学习Scala你会很难。
4. Scala语言的特点
Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。
1)Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。
2)Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。
3)Scala单作为一门语言来看,非常的简洁高效。
4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中, 因此,对于学习过Java的同学,只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。
什么是Scala