第一章 可伸展的语言

原创 2015年11月21日 09:39:31

关于Scala:

  • Scala来自于scalable一词,译为“可伸展的语言”;
  • 它运行在标准的Java平台上,可以与所有Java库无缝交互;
  • 融合面向对象和函数式编程的风格;

在Eric Steven Raymond的《The Cathedral and the Bazaar》(《大教堂与集市》)一书中将大教堂和集市作为软件开发的两个隐喻。

大教堂:几近完美的建筑物,花费很长时间建设,而一旦建成了就长时间保持不变;
集市:每天都会被集市中的人调整和扩展。

Scala就像集市一样,每天都在不断地被使用者扩展。
它没有提供“完美齐全”语言中可能需要的所有东西,而是把制作这些东西的工具交给使用者。

Scala是纯粹的面向对象语言,每个值都是对象,每个操作都是方法调用。
Scala是成熟的函数式语言,函数也是值,与整数或字符串处于同一个地位。

  • 使用Scala的理由:
    • 兼容性
      • Scala无需脱离Java平台重新学习开发,可以保全现有代码并添加新的东西;
      • Scala程序会被编译成JVM的字节码;
      • 运行时性能与Java程序不分上下;
      • Scala代码可以调用Java方法,访问Java字段,继承Java类和实现Java接口;
    • 简洁
      • Scala程序保守估计是同样Java程序的一半左右;
      • 类型推断机制使程序更易读且有条理;
    • 高级
      • 提高特质的抽象级别来帮助管理复杂性;
      • 整体复杂度的降低,犯错机会相应减少;
    • 静态类型
      • 静态类型系统可以根据保存和计算的值和类型认定变量和表达式类型;
      • 以Java的内嵌类型系统为基础;
      • 使用泛型参数化类型、使用交集组合类型、使用抽象类型隐藏类型细节;
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C语言 第一章绪论

  • 2016-03-14 15:10
  • 714KB
  • 下载

浙江中医药大学-《数据结构》(C语言版)-第一章-第二章概念与代码

浙江中医药大学-2015数据结构与算法-绪论与线性表概念、代码

西电C语言学习第一章

  • 2015-01-17 16:04
  • 1.17MB
  • 下载

一字一句体验语言的魅力-2:80386-datasheet翻译学习-第一章完

1.1.4 Part IV ── Instruction Set 指令集 Parts I, II, and III present overviews of the i...

C语言教程第一章

  • 2013-09-14 10:57
  • 88KB
  • 下载

c语言 第一章

  • 2012-11-11 13:41
  • 662KB
  • 下载

Scala学习整理[第一章 可伸缩的语言]<Programming In Scala>

##回顾 之前通过实验楼的课程已经对scala语言有了初步的了解 ,做了一些运算/重载/函数式编程的小Demo .但是不少细节还是模糊的 ,刚好看到 **Programming In Scala** ...

c语言教案第一章

  • 2014-03-05 20:27
  • 988KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)