函数式编程
定义
函数式编程中的函数指的就是数学中的函数,函数的值只取决于传入函数的参数,不依赖其他状态。也就是说一个函数只要参数不变,无论什么时候调用,调用几次,值都不变。
特点
- 可以把函数当做参数传给另一个函数。也可以把函数当做返回值返回出来,也可以在一个函数体里定义一个函数。
- 纯函数式编程,没有副作用。即变量一经赋值,就不可变。
- 引用透明性。指的是函数的运行不依赖于外部变量或"状态",只依赖于输入的参数,任何时候只要参数相同,引用函数所得到的返回值总是相同的。
scala
简介
Scala是一门现代的多范式编程语言,平滑地集成了面向对象和函数式语言的特性,旨在以简练、优雅的方式来表达常用编程模式。Scala的设计吸收借鉴了许多种编程语言的思想,只有很少量特点是Scala自己独有的。Scala语言的名称来自于“可伸展的语言”,从写个小脚本到建立个大系统的编程任务均可胜任。
Scala运行于Java平台(JVM,Java 虚拟机)上,并兼容现有的Java程序,Scala代码可以调用Java方法,访问Java字段,继承Java类和实现Java接口。
在面向对象方面,Scala是一门非常纯粹的面向对象编程语言,也就是说,在Scala中,每个值都是对象,每个操作都是方法调用。