Scala初入

何为Scala物

  Scala为基于JVM虚拟机中的面向对象与函数式编程思想而且彻底兼容Java的混合编程语言,能够是Scala与Java是同根同源的,既然Scala与JAVA都是基于JVM之上的编程语言那么Scala的特点又在哪呢 Scala最大的特点就是他是支持函数式编程的,函数式编程风格使得Scala语法远比Java简洁、优雅、易读懂得多,又由于Scala支持函数式编程因此Scala也具备函数式编程中很重要的特性:不可变,因此使用Scala编写 并发程序会比在Java中简单得多;Scala原生支持REPL(Read-Eval Print Loop),在REPL中就能够很好的学习与调试程序;
  Scala的并发编程与Java有很大不通Scala社区强调的是不可变性,这就致使Scala很容易开发出高并发的程序,Scala使用了Actor模型做为并发的模型,这也是他的一大特点之一;编程

scala初入

  因为Scala是基于Java虚拟机的因此要使用Scala首先要配置好Java,下载Scala配置好环境变量后便可,在终端输入scala进入REPL环境;
Scala启动并发

            一、Scala启动框架

第一个Scala程序:机器学习

scala> def hello()={  
        println("hello world")  
        }  
scala> hello()  
hello world

  这里定义了一个函数hello,而后调用函数,函数打印hello world,很是简单可是他与Java的差异仍是很大的不须要定义一个类函数能够单独使用,能够没有冒号结尾;编程语言

scala生态

  Scala通过十多年的发展已经很成熟,当前scala生态中最出名的莫过于Spark、Akka、Kafka;Spark在大数据领域正在火爆的发展,Spark提供了全面、统一适用与不一样场景的大数据处理需求(批量数据处理、交互式数据查询、实时数据流处理、机器学习);Akka使用了Actor模型比Scala的actor站在了更高的抽象程度 并提供了很好的可扩展性,使用了let it crash的容错原则使得Akka可构建出可自愈的高性能分布式系统;Kafka为高性能分布式消息系统由LinkedIn贡献出来,Kafka被誉为下一代分布式消息系统;
  除了上面所说的很是出名的外Scala社区还有如:持久化、HTTP、Web框架等等各方面的轮子;
文章首发地址:Solinx
http://www.solinx.co/archives/526分布式