为什么要学习Scala
- Scala————Java++
Scala基于JVM,和Java完全兼容,同样具有跨平台、可移植性好、方便的垃圾回收等特性
Svala比Java更加面向对象
Scale是一门函数式编程语言
- Scala更加适合大数据的处理
Scala对集合类型数据处理有非常好的支持
Spark的底层用Scala编写
- Scala入门
- 基本语法
变量和数据类型
运算符
流程控制
- 核心特性
函数式编程
面向对象
集合
- 其它特色
模式匹配
异常处理
隐式转换
泛型
- Scala版本 2.12,匹配最新版项目需要
- Spark——新一代内存级大数据计算框架,是大数据的重要内容。
- Spark就是使用Scala编写的。因此为了更好的学习Spark,需要掌握Scala这门语言。
- Spark的兴起,带动Scala的发展
- Scala和Java的关系
一般来说,学Scala的人,都会Java,而Scala是基于Java的,因此我们需要将Scala和Java以及JVM之间的关系搞清楚,否则学习Scala你会懵逼。
Scala和Java及JVM关系图
Scala 语言特点
Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言(静态语言需要提前编译的如:Java、C、C++等,动态语言如:js)。
- Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。(多范式,就是多种编程方法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法)
- Scala源代码(.scala) 会被编译成Java字节码(.class) ,然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。
- Scala单作为一门语言来看,非常的简洁高效。
- Scala在设计时,作者是参考了Java的设计思想,可以说Scala是源于Java,同时作者也加入了自己的思想,将函数式编程的特点融合到Java中,因此,搞清楚Scala和Java的相同点和不同点,就可以快速掌握Scala语言。