
Scala编程思想
《Scala编程思想》中国机械工业出版社在2016 年1月出版,作者:(美)布鲁斯·埃克尔(Bruce Eckel ) (美)黛安娜·马什(Dianne Marsh),译者:陈昊鹏;有关编程和Scala的基础知识,但是并没有用这门语言博大精深的完整知识体系来淹没你。属于初学者的程式设计师应该将其看作一个游戏:你可以通关,但是需要一路解决多个难题。有经验的程式设计师能够快速阅读本书,并且发现需要慢下来留心阅读的地方。
基本介绍
- 书名:Scala编程思想
- 又名:The Scala programming ideas
- 作者: (美)布鲁斯·埃克尔(Bruce Eckel ) (美)黛安娜·马什(Dianne Marsh)
- 原版名称:The Scala programming ideas
- 译者: 陈昊鹏
- ISBN:9787111517405
- 类别:计算机
- 页数:305
- 定价:¥69.00
- 出版社:机械工业出版社
- 出版时间:2016 年1月
- 装帧:平装
- 开本:16开
内容简介
Scala:写给未来的代码,多核时代,Scala已成为最主流的大数据处理程式语言之一。Scala相信程式设计师的智慧,赋予他们选择工具和最佳化结构的自由,从容应对千变万化的技术需求。
Bruce Eckel:续写编程经典,大师视野,深入浅出,一脉相承,举重若轻。带你轻鬆掌握Scala语言的基础概念和核心技术,是学习Scala编程的最佳入门宝典。
原子;厚积薄发的力量,从Scala中提炼出的一个可运行的核心功能子集.形成众多短小精悍的“原乾”,再辅以练习和解答,使整个阅读过程成为带有许多检查点的渐进式学习体验。
·本书原则:积跬步以至千里,无任何前向引用,无任何对其他语言的引用,事实胜于雄辩,实践出真知。
·书中包含的只呈编程和Scala的基础知识,末涉及高级特性(如函式式编程)。我们的目的不是在Scala庞大的知识体系中囤囵吞枣,而是在踏上更高级的编程之路时祝你一臂之力。
Bruce Eckel:续写编程经典,大师视野,深入浅出,一脉相承,举重若轻。带你轻鬆掌握Scala语言的基础概念和核心技术,是学习Scala编程的最佳入门宝典。
原子;厚积薄发的力量,从Scala中提炼出的一个可运行的核心功能子集.形成众多短小精悍的“原乾”,再辅以练习和解答,使整个阅读过程成为带有许多检查点的渐进式学习体验。
·本书原则:积跬步以至千里,无任何前向引用,无任何对其他语言的引用,事实胜于雄辩,实践出真知。
·书中包含的只呈编程和Scala的基础知识,末涉及高级特性(如函式式编程)。我们的目的不是在Scala庞大的知识体系中囤囵吞枣,而是在踏上更高级的编程之路时祝你一臂之力。
作译者
陈昊鹏,上海交通大学软体学院副教授,从事软体工程和分散式计算方面的研究,译作有《Java编程思想》《Java核心技术·卷Ⅱ》《Java程式语言》等。Bruce Eckel ,获得多项大奖的《Java编程思想》《C++编程思想》及其他众多着作的作者。他在编程世界中耕耘了30余载——着书、讲座、举办研讨会和提供谘询。
Dianne Marsh,她从2008年以来一直在使用和研究Scala。自1987年开始从事编程工作起,熟知的语言从C到C#、从Python到Java,但她发现Scala出类拔萃且妙趣横生。
Dianne Marsh,她从2008年以来一直在使用和研究Scala。自1987年开始从事编程工作起,熟知的语言从C到C#、从Python到Java,但她发现Scala出类拔萃且妙趣横生。
图书目录
出版者的话
译者序
前言
编辑器 / 1
shell / 2
安装(Windows) / 5
安装(Mac) / 9
安装(Linux) / 13
运行Scala / 19
注释 / 20
编写脚本 / 21
值 / 22
数据类型 / 24
变数 / 27
表达式 / 29
条件表达式 / 31
计算顺序 / 34
组合表达式 / 37
总结1 / 41
方法 / 45
类和对象 / 50
ScalaDoc / 54
创建类 / 55
类中的方法 / 58
导入和包 / 61
测试 / 65
域 / 70
for循环 / 72
Vector / 75
更多的条件表达式 / 79
总结2 / 82
模式匹配 / 91
类参数 / 94
具名参数和预设参数 / 98
重载 / 101
构造器 / 104
辅助构造器 / 108
类的练习 / 110
case类 / 112
字元串插值 / 115
参数化类型 / 117
作为对象的函式 / 120
map和reduce / 125
推导 / 128
基于类型的模式匹配 / 133
基于case类的模式匹配 / 136
简洁性 / 139
风格拾遗 / 144
地道的Scala / 147
定义操作符 / 148
自动字元串转换 / 151
元组 / 153
伴随对象 / 157
继承 / 163
基类初始化 / 166
覆盖方法 / 170
枚举 / 173
抽象类 / 176
特徵 / 179
统一访问方式和setter / 185
衔接Java / 187
套用 / 190
浅尝反射 / 192
多态 / 194
组合 / 200
使用特徵 / 206
标记特徵和case对象 / 209
类型参数限制 / 211
使用特徵构建系统 / 214
序列 / 219
列表和递归 / 223
将序列与zip相结合 / 226
集 / 229
映射表 / 232
引用和可修改性 / 235
使用元组的模式匹配 / 238
用异常进行错误处理 / 242
构造器和异常 / 247
用Either进行错误报告 / 250
用Option对“非任何值”
进行处理 / 255
用Try来转换异常 / 261
定製错误报告机制 / 269
按契约设计 / 276
记日誌 / 279
扩展方法 / 282
使用类型类的可扩展系统 / 285
接下来如何深入学习 / 290
附录A AtomicTest / 291
附录B 从Java中调用
译者序
前言
编辑器 / 1
shell / 2
安装(Windows) / 5
安装(Mac) / 9
安装(Linux) / 13
运行Scala / 19
注释 / 20
编写脚本 / 21
值 / 22
数据类型 / 24
变数 / 27
表达式 / 29
条件表达式 / 31
计算顺序 / 34
组合表达式 / 37
总结1 / 41
方法 / 45
类和对象 / 50
ScalaDoc / 54
创建类 / 55
类中的方法 / 58
导入和包 / 61
测试 / 65
域 / 70
for循环 / 72
Vector / 75
更多的条件表达式 / 79
总结2 / 82
模式匹配 / 91
类参数 / 94
具名参数和预设参数 / 98
重载 / 101
构造器 / 104
辅助构造器 / 108
类的练习 / 110
case类 / 112
字元串插值 / 115
参数化类型 / 117
作为对象的函式 / 120
map和reduce / 125
推导 / 128
基于类型的模式匹配 / 133
基于case类的模式匹配 / 136
简洁性 / 139
风格拾遗 / 144
地道的Scala / 147
定义操作符 / 148
自动字元串转换 / 151
元组 / 153
伴随对象 / 157
继承 / 163
基类初始化 / 166
覆盖方法 / 170
枚举 / 173
抽象类 / 176
特徵 / 179
统一访问方式和setter / 185
衔接Java / 187
套用 / 190
浅尝反射 / 192
多态 / 194
组合 / 200
使用特徵 / 206
标记特徵和case对象 / 209
类型参数限制 / 211
使用特徵构建系统 / 214
序列 / 219
列表和递归 / 223
将序列与zip相结合 / 226
集 / 229
映射表 / 232
引用和可修改性 / 235
使用元组的模式匹配 / 238
用异常进行错误处理 / 242
构造器和异常 / 247
用Either进行错误报告 / 250
用Option对“非任何值”
进行处理 / 255
用Try来转换异常 / 261
定製错误报告机制 / 269
按契约设计 / 276
记日誌 / 279
扩展方法 / 282
使用类型类的可扩展系统 / 285
接下来如何深入学习 / 290
附录A AtomicTest / 291
附录B 从Java中调用