Scala编程

出版时间:2010-12  出版社:电子工业出版社  作者:Martin Odersky、Lex Spoon、Bill Venners 著  页数:492  字数:782000  译者:黄海旭,高宇翔  
Tag标签:无  

内容概要

本书介绍了一种新的编程语言,它把面向对象和函数式编程概念有机地结合为整体,从而形成一种完整统一、语义丰富的新思维体系。本书循序渐进,由浅入深,经作者精心组织、仔细编排,将语言中的各种概念自然地铺陈在字里行间。除此之外,本书还包含了大量富有针对性和趣味性的示例,它们除了提供对语言各个方面的具体演示之外,还从侧面说明了如何将函数式编程的理念切实并广泛地应用到面向对象编程中。本书面向的读者是有一定编程经验的开发人员,他们希望能够开拓眼界,并致力于提高在软件开发各方面的技能。

作者简介

关于作者
Martin Odersky是Scala语言的创造者。作为瑞士洛桑联邦理工学院(EPFL)的教授,他主要从事编程语言领域的工作。更具体地说,是面向对象和函数式编程的语言。他研究的论题是,这两种编程模式是硬币的两面,应该被尽可能地统一在一起。为了证明这点,他已试验性地设计了大量的语言,从Pizza到GJ到Functional Nets语言 。他还作为Java泛型的联合设计师及当前javac参考编译器的原作者影响了Java的发展。从2001年起,他主要从事Scala编程语言的设计、实现及改进工作。
Lex Spoon是Google的软件工程师。他以EPFL博士后身份在Scala方面工作了两年时间,从佐治亚理工学院(Georgia Tech)获得计算机科学的博士学位。那时他的主要工作是动态语言的静态分析。除了Scala之外,他还从事大量其他的编程语言工作,范围从动态语言Smalltalk到科学性语言X10。他和他的妻子,两只猫、一条吉娃娃还有一只乌龟,现生活于亚特兰大。
Bill Venners是Artima的总裁,兼Artima开发者网站(www.artima.com)的发行人。他是《深入Java虚拟机》(“Inside the Java Virtual Machine”)的作者,该书是定向为程序员的Java平台架构和内部组织的总体研究。他在JavaWorld杂志上有很受欢迎的专栏,内容涵盖Java内部机制,面向对象设计,还有Jini。Bill从Jini诞生伊始就活跃于Jini社区,他曾领导Jini社区的ServiceUI项目,而其中的ServiceUI API已经变成了联系用户界面和Jini服务之间的事实标准。Bill还是ScalaTest(Scala和Java开发的开源测试工具)的首席开发者(lead developer)和设计者。

书籍目录

图表清单前言致谢导读第1章  可伸展的语言第2章  Scala入门初探第3章  Scala入门再探第4章  类和对象第5章  基本类型和操作第6章  函数式对象第7章  内建控制结构第8章  函数和闭包第9章  控制抽象第10章  组合与继承第11章  Scala的层级第12章  特质第13章  包和引用第14章  断言和单元测试第15章  样本类和模式匹配第16章  使用列表第17章  集合类型第18章  有状态的对象第19章  类型参数化第20章  Abstract Members抽象成员第21章  隐式转换和参数第22章  实现列表第23章  重访for表达式第24章  Extractors抽取器第25章  注解第26章  使用XML第27章  使用对象的模块化编程第28章  对象相等性第29章  结合Scala和Java第3章  Actor和并发第31章  连结符解析第32章  GUI编程第33章  试算表附录A  Unix和Windows的Scala脚本术语表参考文献关于作者索引

章节摘录

  当然也可以直接使用Java的类库。但结果却不容乐观,因为尽管Java允许创建新的类,但这些类总感觉不像原生的语言支持那么方便。 前面的例子演示了如何在Scala中增加新的类型,使得它们用起来方便得像内建类型一样。同样的扩展理念也应用在了控制结构上。这种扩展可以由Scala的“基于actor”的并发编程API阐明。 随着近年来多核处理器的激增,为了获取可接受的性能,应用中必须运用更多的并行机制。这常常就意味着须重写代码以使计算分布到若干并发线程上。不幸的是,创建可依赖的多线程程序经实践证明非常具有挑战性。Iava的线程模型是围绕着共享内存和锁建立的,当系统在规模和复杂度都不断变大的时候,这种模型会越发变得难以理解。很难说程序里面没有资源竞争或潜藏的死锁--有些东西不是能经测试检验出的,或许只在投入生产后才会表现出来。目前可以认为比较安全的可选方案是消息传递架构,例如在Erlan只编程语言中应用的“actor”方案。 1ava带了一个丰富的、基于线程的并发库。scala也可以像使用其他Java API那样用它编程。不过,Scala还提供了一个实质上实现了Erlang的actor模型的附加库。  ……

图书封面

图书标签Tags

评论、评分、阅读与下载


    Scala编程 PDF格式下载


用户评论 (总计24条)

 
 

  •   适合有较多编程经验的朋友阅读。
  •   scala的入门好书,讲解详细透彻,灌输函数式思想。
  •   昨天入手,正在读。对于scala的介绍循序渐进,适合我的学习风格。
  •   写的挺好 国内scala相关的书还是少了点
  •   学scala的人必定要有一本。平常就当工具书用吧
  •   对于入门scala,这是一本不错的书,特别是在现在scala的纸质书不多的情况下,推荐
  •   讲的很详细,入门经典之作,慢慢温习
  •   刚到手,看了一下,比网上的只言片语要好
  •   书和服务俱佳!
  •   并行开发的好书,利用jvm,是java开发者学习并行开发的不二之选。
    也是一本了解函数式编程的好书。
    全书讲解比较全面,是初学者的入门必选。
  •   了解Scala编程
  •   没见过这么大开本的书。排版各个方面都给人很不专业的感觉。而且价格定的很高。看来“博文视点”的质量不在像以前那么过硬了。
  •   好用。不错。有点难。
  •   scala方面的书太少了,难得
  •   关注一下新兴技术
  •   Scala书评
  •   写的不错,值得看~
  •   单位正好要开始搞屎壳郎了
  •   不是入门教程,是高级教程
  •     好的一方面,这本书倒是一本很详尽细致的参考手册,scala里做一件事往往有好几种做法(一种最底层的原始做法,一种加了点语法糖的友好做法,还一种糖加多了甜的不得了的做法),这本书介绍的比较充分,并且在很多地方对这语言为什么这么设计做了解释,在读完书开始实用时碰到问题的时候(一定会的)回来翻书是很有帮助的。
      
      不好的一方面:作者 Martin Odersky是写java编译器的牛人,技术是没说的,但这书写的可就不够深入浅出。作者一方面试图将java程序员引导到函数式编程的世界,一方面有没对函数式编程做足够的理论上的解释,如果读者没有函数式编程的经验(比如haskell),直接从这本书上手是有点难。我建议想学scala的人可以先学下haskell换换脑子,http://learnyouahaskell.com/chapters,先看这本书,有概念后再回来学scala进行应用。
      书里的代码例子往往试图同时反映scala的多个特点(scala也确实很有特点。。。),怕是也会吓倒不少对scala感兴趣的人。
  •   读此书前,最好念一本fp的理论书
  •   魔头一语中的。
  •   最近的scala评价很不好呐,应用也没有多少,更不用说在生产环境的实例了,抉择呐。
  •   用了的都说好,没用过的都说不好。生产环境使用的企业有LinkedIn、twitter、FourSquare等。列表见http://www.scala-lang.org/node/1658
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7