且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Scala 学习

更新时间:2022-08-13 10:59:01

1,Scala学习

官方网网站;

http://www.scala-lang.org/

http://www.scala-lang.org/download/


可伸缩的语言是一种多范式的编程语言,一种类似java的编程,设计初衷是要集成面向对象编程和函数式编程的各种特性。
Scala是在JVM上运行。
Scala有几项关键特性表明了它的面向对象的本质。例如,Scala中的每个值都是一个对象,包括基本数据类型(即布尔值、数字等)在内,连函数也是对象。另外,类可以被子类化,而且Scala还提供了基于mixin的组合(mixin-based composition)。
与只支持单继承的语言相比,Scala具有更广泛意义上的类重用。Scala允许定义新类的时候重用“一个类中新增的成员定义(即相较于其父类的差异之处)”。Scala称之为mixin类组合。
Scala还包含了若干函数式语言的关键概念,包括高阶函数(Higher-Order Function)、局部套用(Currying)、嵌套函数(Nested Function)、序列解读(Sequence Comprehensions)等等。
Scala是静态类型的,这就允许它提供泛型类、内部类、甚至多态方法(Polymorphic Method)。另外值得一提的是,Scala被特意设计成能够与Java和.NET互操作。Scala当前版本还不能在.NET上运行(虽然上一版可以-_-b),但按照计划将来可以在.NET上运行。
Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码)。你可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。用David Rupp的话来说,
它也可以访问现存的数之不尽的Java类库,这让(潜在地)迁移到Scala更加容易。
这让Scala得以使用为Java1.4、5.0或者6.0编写的巨量的Java类库和框架,Scala会经常性地针对这几个版本的Java进行测试。Scala可能也可以在更早版本的Java上运行,但没有经过正式的测试。Scala以BSD许可发布,并且数年前就已经被认为相当稳定了。


2,搭建环境


Environment Variable Value (example)
Unix
$SCALA_HOME
$PATH
/usr/local/share/scala
$PATH:$SCALA_HOME/bin
Windows
%SCALA_HOME%
%PATH%
c:\Progra~1\Scala
%PATH%;%SCALA_HOME%\bin

解压缩之后,设置路径。

输入scala 就可以进入命令行模式了。

之后print("hello world!")

就可以使用了。

3,学习文档

object HelloWorld {
    def main(args: Array[String]) {
      println("Hello, world!")
    }
  }

hello world。

http://c.open.163.com/coursera/courseIntro.htm?cid=116#/courseIntro