当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

面向Java开辟人员的Scala指南 - 面向对象的函数编程[Java编程]

赞助商链接



  本文“面向Java开辟人员的Scala指南 - 面向对象的函数编程[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

在历史上,Java™ 平台一向属于面向对象编程的范畴,但是目前,乃至 Java 语言的刚强支持者也开始注意利用程序开辟中的一种新趋向:函数编程.在这个新的系列中,Ted Neward 介绍了 Scala,一种针对 JVM 将函数和面向对象技术组合在一同的编程语言.在本文中,Ted 将举例阐明您为什么应当花时间学习 Scala(比方并发),并介绍若何快速从中受益.

您永久不会忘掉您的初恋!

关于我来说,她的名字是 Tabinda (Bindi) Khan.那是一段高兴的少年光阴,精确地说是在七年级.她很漂亮、聪明,而最好的是,她常常因我的拙笨的笑话而乐不可支.在七年级和八年级的时间里,我们常常 “出去走走”(当时我们是这么说的).但到了九年级,我们脱离了,高雅一点的说法是,她厌倦了持续两年听到一样的拙笨的男孩笑话.我永久都不会忘掉她(分外是因为我们在高中毕业 10 周年集会时再次相遇);但更重要的是,我将永久不会失去这些贵重的(大概有点言过其实)回想.

Java 编程和面向对象是很多程序员的 “初恋”,我们对待它就像对待 Bindi 一样恭敬和完好的爱慕.一些开辟人员会奉告您 Java 将他们从内存管理和 C++ 的炼狱中解救出来了.其他一些人会奉告您 Java 编程使他们摆脱了对历程性编程的绝望.乃至关于一些开辟人员来说,Java 代码中的面向对象编程就是 “他们干事情的方法”.(嘿嘿,假如这对我爸爸,以及爷爷有效该多好!)

但是,时间终究会冲淡全部对初恋的记忆,生活仍旧在持续.感情已经变了,故事中的主角也成熟了(并且学会了一些新笑话).但最重要的是,我们四周的世界变了.很多 Java 开辟人员意识到固然我们深爱 Java 编程,但也应当抓住开辟范畴中的新机会,并理解若何操纵它们.

我将始终爱着你 ……

在近来五年中,对 Java 语言的不满情感渐渐增添.固然一些人大概认为 Ruby on Rails 的发展是主要因素,但是我要辩论的是,RoR(被称为 Ruby 专家)只是后果,而非缘由.大概,可以更精确地说,Java 开辟人员利用 Ruby 有着更深化、更隐伏的缘由.

简单地说,Java 编程略显老态了.

大概,更精确地说,Java 语言 略显老态了.

考虑一下:当 Java 语言最初诞生时,Clinton(第一位)在办公室中,很少有人利用 Internet,这主如果因为拨号是在家里利用网络的惟一方法.博客还没有创造出来,每个人相信担当是重用的基本办法.我们还相信,对象是为对世界举行建模的最好办法,摩尔定律将永久统治着世界.

实际上,摩尔定律惹起了行业内很多人的分外关注.自 2002/2003 年以来,微处理器技术的发展使得具有多个 “内核” 的 CPU 得以创造出来:本质上是一个芯片内具有多个 CPU.这违反了摩尔定律,摩尔定律认为 CPU 速度将每隔 18 个月翻一倍.在两个 CPU 上同时履行多线程环境,而不是在单个 CPU 上履行尺度循环周期,这意味着代码必须具有巩固的线程安全性,才能存活下来.

学术界已经展开了环绕此问题的很多研究,招致了过量新语言的呈现.关键问题在于很多语言成立在自己的虚拟机或注释器上,所以它们代表(就像 Ruby 一样)到新平台的转换.并发冲突是真正的问题所在,一些新语言供应了强盛的办理筹划,太多的公司和企业对 10 年前从 C++ 到 Java 平台的迁移仍记忆犹新.很多公司都不肯意冒迁移到新平台的风险.事实上,很多公司对上一次迁移到 Java 平台仍心有余悸.

理解 Scala.

一种可伸缩语言

Scala 是一种函数对象混合的语言,具有一些强盛的长处:

首先,Scala 可编译为 Java 字节码,这意味着它在 JVM 上运行.除了答应持续操纵丰富的 Java 开源生态系统之外,Scala 还可以集成到现有的 IT 环境中,无需举行迁移.

其次,Scala 基于 Haskell 和 ML 的函数原则,大量鉴戒了 Java 程序员钟爱的面向对象概念.因此,它可以将两个范畴的上风混合在一同,从而供应了明显的长处,并且不会失去我们一向依靠的熟习的技术.

最后,Scala 由 Martin Odersky 开辟,他大概是 Java 社区中研究 Pizza 和 GJ 语言的最闻名的人,GJ 是 Java 5 泛型的工作原型.并且,它给人一种 “严厉” 的感受;该语言并非一时髦起而成立的,它也不会以一样的方法被丢弃.

Scala 的名称表明,它还是一种高度可伸缩 的语言.我将在本系列的后续文章中介绍有关这一特点的更多信息.


  以上是“面向Java开辟人员的Scala指南 - 面向对象的函数编程[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • Jt —— 面向Java情势的框架
  • 面向Java开辟人员的Scala指南 - 用Scitter更新Twitter
  • 面向Java开辟人员的Scala指南 - 类操作
  • 面向Java开辟人员的Scala指南 - 面向对象的函数编程
  • 面向Java开辟人员的Scala指南 - 实现承当
  • 面向Java开辟人员的Scala指南 - Scala和servlet
  • 面向Java开辟人员的Scala指南 - Scala掌握构造内部揭密
  • 面向Java开辟人员的Scala指南 - 包和访谒修饰符
  • <b>面向Java开辟人员的Scala指南 - 构建计算器,第1部份</b>
  • 面向Java开辟人员的Scala指南 - 构建计算器,第2部份
  • 面向Java开辟人员的Scala指南 - 构建计算器,第3部份
  • 面向Java开辟人员的Scala指南 - 关于特点和行为
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .