scala 是一种有趣的语言,是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。scala运行在jvm上,兼容现有的java程序,集成面向对象编程和函数式编程的各种特性,轻松实现和丰富的 java 类库互联互通。scala也是一种函数式语言,其函数也能当成值来使用。scala提供了轻量级的语法用以定义匿名函数,支持高阶函数,允许嵌套多层函数,并支持柯里化。scala的case class及其内置的模式匹配相当于函数式编程语言中常用的代数类型。
优点
优雅与高速
这是框架设计师第一个要考虑的问题,框架的用户是应用开发程序员,api是否优雅直接影响用户体验。scala语言表达能力强,一行代码抵得上java多行,开发速度快;scala是静态编译的,所以和jruby,groovy比起来速度会快很多。
fp 泛型支持
如果用多了 spring 中大量的 template 接口, 你就会觉得 fp 其实还是蛮好用的。而这仅仅是 fp 好处的冰山一角。函数其实就是一个 input -》 output (scala 也是这么表示一个函数的), 没有任何副作用, 与状态无关, 由于这种特性, 所以函数式的编程范式在分布式领域有很多好处对于函数式编程,我的知识实在是皮毛, 但可以这么说, fp 相对与 oo 有哪些优势, scala 对于 java 差不多就有哪些优势。正因为 fp 有如此多的优势, 所以 java8 才引入了 fp. 从某种程度上来说, java 认可了 scala 的做法。
scala还包含了若干函数式语言的关键概念,包括高阶函数(higher-order function)、局部套用(currying)、嵌套函数(nested function)、序列解读(sequence comprehensions)等。scala是静态类型的,这就允许它提供泛型类、内部类、甚至多态方法(polymorphic method)。另外值得一提的是,scala被特意设计成能够与java和.net互操作。
三星在印度推出OLED电视
充电器电路PCB的设计是什么样子的
为什么IOT会遇到区块链 IOT和区块链如何共存
TicWatch C2智能手表评测
温湿度探头用于水果烘干房的温湿度值探测
简单说明一下Scala语言与其优点
关于电视盒子你所不知道的几件事
诺基亚贝尔携手苏州电信,将在苏州市部署边缘计算网络
天跃科技TY-SIMS安防智能管理系统的功能实现和应用设计
CD4026数字钟电路
买家卖家间的信任问题仍是阻碍跨境贸易的核心障碍,区块链成关键
电气设备换了肿么办?看完这文也会维修了
知识产权是人工智能的重要保证与关键前提
美国十大芯片公司的排名
李彦宏“亲自接管了”DuerOS,那么,留给Apollo的是什么?
OTG控制芯片ISP1362内部结构图
VOCs挥发性有机物处理技术有哪些
德国5G建设向华为开放,打了个政治正确的“擦边球”
DDS技术及其在BITS中的应用
电阻的选型规范