图书介绍
SCALA程序设计 第2版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)DEAN WAMPLER,ALEX PAYNE著;王渊,陈明译 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115416818
- 出版时间:2016
- 标注页数:474页
- 文件大小:57MB
- 文件页数:499页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
SCALA程序设计 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 零到六十:Scala简介1
1.1 为什么选择Scala1
1.1.1 富有魅力的Scala2
1.1.2 关于Java 83
1.2 安装Scala3
1.2.1 使用SBT5
1.2.2 执行Scala命令行工具6
1.2.3 在IDE中运行Scala REPL8
1.3 使用Scala8
1.4 并发17
1.5 本章回顾与下一章 提要27
第2章 更简洁,更强大28
2.1 分号28
2.2 变量声明29
2.3 Range31
2.4 偏函数32
2.5 方法声明33
2.5.1 方法默认值和命名参数列表33
2.5.2 方法具有多个参数列表34
2.5.3 Future简介35
2.5.4 嵌套方法的定义与递归38
2.6 推断类型信息40
2.7 保留字44
2.8 字面量46
2.8.1 整数字面量46
2.8.2 浮点数字面量47
2.8.3 布尔型字面量48
2.8.4 字符字面量48
2.8.5 字符串字面量48
2.8.6 符号字面量50
2.8.7 函数字面量50
2.8.8 元组字面量50
2.9 Option、Some和None:避免使用null52
2.10 封闭类的继承53
2.11 用文件和名空间组织代码54
2.12 导入类型及其成员55
2.12.1 导入是相对的56
2.12.2 包对象57
2.13 抽象类型与参数化类型57
2.14 本章回顾与下一章提要59
第3章 要点详解60
3.1 操作符重载?60
3.2 无参数方法63
3.3 优先级规则64
3.4 领域特定语言65
3.5 Scala中的if语句66
3.6 Scala中的for推导式67
3.6.1 for循环67
3.6.2 生成器表达式67
3.6.3 保护式:筛选元素67
3.6.4 Yielding68
3.6.5 扩展作用域与值定义69
3.7 其他循环结构70
3.7.1 Scala的while循环71
3.7.2 Scala中的do-while循环71
3.8 条件操作符71
3.9 使用try、catch和final子句72
3.10 名字调用和值调用75
3.11 惰性赋值78
3.12 枚举79
3.13 可插入字符串81
3.14 Trait:Scala语言的接口和“混入”83
3.15 本章回顾与下一章 提要85
第4章 模式匹配86
4.1 简单匹配86
4.2 match中的值、变量和类型87
4.3 序列的匹配90
4.4 元组的匹配94
4.5 case中的guard语句94
4.6 case类的匹配95
4.6.1 unapply方法96
4.6.2 unapplySeq方法100
4.7 可变参数列表的匹配101
4.8 正则表达式的匹配103
4.9 再谈case语句的变量绑定104
4.10 再谈类型匹配104
4.11 封闭继承层级与全覆盖匹配105
4.12 模式匹配的其他用法107
4.13 总结关于模式匹配的评价111
4.14 本章回顾与下一章 提要111
第5章 隐式详解112
5.1 隐式参数112
5.2 隐式参数适用的场景115
5.2.1 执行上下文115
5.2.2 功能控制115
5.2.3 限定可用实例116
5.2.4 隐式证据120
5.2.5 绕开类型擦除带来的限制122
5.2.6 改善报错信息124
5.2.7 虚类型124
5.2.8 隐式参数遵循的规则127
5.3 隐式转换128
5.3.1 构建独有的字符串插入器132
5.3.2 表达式问题134
5.4 类型类模式135
5.5 隐式所导致的技术问题137
5.6 隐式解析规则139
5.7 Scala内置的各种隐式139
5.8 合理使用隐式146
5.9 本章回顾与下一章 提要146
第6章 Scala函数式编程147
6.1 什么是函数式编程148
6.1.1 数学中的函数148
6.1.2 不可变变量149
6.2 Scala中的函数式编程151
6.2.1 匿名函数、Lambda与闭包152
6.2.2 内部与外部的纯粹性154
6.3 递归154
6.4 尾部调用和尾部调用优化155
6.5 偏应用函数与偏函数157
6.6 Curry化与函数的其他转换158
6.7 函数式编程的数据结构162
6.7.1 序列162
6.7.2 映射表166
6.7.3 集合168
6.8 遍历、映射、过滤、折叠与归约168
6.8.1 遍历169
6.8.2 映射170
6.8.3 扁平映射172
6.8.4 过滤173
6.8.5 折叠与归约174
6.9 向左遍历与向右遍历178
6.10 组合器:软件最佳组件抽象183
6.11 关于复制186
6.12 本章回顾与下一章 提要188
第7章 深入学习for推导式189
7.1 内容回顾:for推导式组成元素189
7.2 for推导式:内部机制192
7.3 for推导式的转化规则194
7.4 Option以及其他的一些容器类型197
7.4.1 Option容器197
7.4.2 Either:Option类型的逻辑扩展200
7.4.3 Try类型205
7.4.4 Scalaz提供的validation类206
7.5 本章回顾与下一章 提要209
第8章 Scala面向对象编程210
8.1 类与对象初步211
8.2 引用与值类型213
8.3 价值类214
8.4 父类217
8.5 Scala的构造器217
8.6 类的字段221
8.6.1 统一访问原则223
8.6.2 一元方法224
8.7 验证输入224
8.8 调用父类构造器(与良好的面向对象设计)226
8.9 嵌套类型230
8.10 本章回顾与下一章 提要232
第9章 特征233
9.1 Java 8中的接口233
9.2 混入trait234
9.3 可堆叠的特征238
9.4 构造trait243
9.5 选择类还是trait244
9.6 本章回顾与下一章 提要245
第10章 Scala对象系统(Ⅰ)246
10.1 参数化类型:继承转化246
10.1.1 Hood下的函数247
10.1.2 可变类型的变异250
10.1.3 Scala和Java中的变异252
10.2 Scala的类型层次结构253
10.3 闲话Nothing(以及Null)254
10.4 Product、case类和元组258
10.5 Predef对象260
10.5.1 隐式转换260
10.5.2 类型定义262
10.5.3 条件检查方法263
10.5.4 输入输出方法263
10.5.5 杂项方法265
10.6 对象的相等265
10.6.1 equals方法266
10.6.2 ==和!=方法266
10.6.3 eq和ne方法267
10.6.4 数组相等和sameElements方法267
10.7 本章回顾与下一章 提要268
第11章 Scala对象系统(Ⅱ)269
11.1 覆写类成员和trait成员269
11.2 尝试覆写final声明272
11.3 覆写抽象方法和具体方法272
11.4 覆写抽象字段和具体字段274
11.5 覆写抽象类型280
11.6 无须区分访问方法和字段:统一访问原则280
11.7 对象层次结构的线性化算法282
11.8 本章回顾与下一章 提要287
第12章 Scala集合库288
12.1 通用、可变、不可变、并发以及并行集合288
12.1.1 scala.collection包289
12.1.2 collection.concurrent包290
12.1.3 collection.convert包291
12.1.4 collection.generic包291
12.1.5 collection.immutable包291
12.1.6 scala.collection.mutable包292
12.1.7 scala.collection.parallel包294
12.2 选择集合295
12.3 集合库的设计惯例296
12.3.1 Builder296
12.3.2 CanBuildFrom297
12.3.3 Like特征298
12.4 值类型的特化298
12.5 本章回顾与下一章 提要300
第13章 可见性规则301
13.1 默认可见性:公有可见性301
13.2 可见性关键字302
13.3 Public可见性303
13.4 Protected可见性304
13.5 Private可见性305
13.6 作用域内私有和作用域内受保护可见性306
13.7 对可见性的想法312
13.8 本章回顾与下一章 提要313
第14章 Scala类型系统(Ⅰ)314
14.1 参数化类型315
14.1.1 变异标记315
14.1.2 类型构造器315
14.1.3 类型参数的名称315
14.2 类型边界315
14.2.1 类型边界上限316
14.2.2 类型边界下限316
14.3 上下文边界320
14.4 视图边界320
14.5 理解抽象类型322
14.6 自类型标记325
14.7 结构化类型329
14.8 复合类型332
14.9 存在类型334
14.10 本章回顾与下一章 提要335
第15章 Scala类型系统(Ⅱ)336
15.1 路径相关类型336
15.1.1 C.this337
15.1.2 C.super337
15.1.3 path.x338
15.2 依赖方法类型339
15.3 类型投影340
15.4 值的类型343
15.4.1 元组类型343
15.4.2 函数类型343
15.4.3 中缀类型343
15.5 Higher-Kinded类型344
15.6 类型Lambda348
15.7 自递归类型:F-Bounded多态350
15.8 本章回顾与下一章 提要351
第16章 高级函数式编程352
16.1 代数数据类型352
16.1.1 加法类型与乘法类型352
16.1.2 代数数据类型的属性354
16.1.3 代数数据类型的最后思考355
16.2 范畴理论355
16.2.1 关于范畴356
16.2.2 Functor范畴356
16.2.3 Monad范畴360
16.2.4 Monad的重要性362
16.3 本章回顾与下一章 提要363
第17章 并发工具365
17.1 scala.sys.process包365
17.2 Future类型367
17.3 利用Actor模型构造稳固且可扩展的并发应用371
17.4 Akka:为Scala设计的Actor系统372
17.5 Pickling和Spores383
17.6 反应式编程384
17.7 本章回顾与下一章 提要385
第18章 Scala与大数据386
18.1 大数据简史386
18.2 用Scala改善MapReduce387
18.3 超越MapReduce392
18.4 数学范畴393
18.5 Scala数据工具列表394
18.6 本章回顾与下一章 提要394
第19章 Scala动态调用396
19.1 一个较为激进的示例:Ruby on Rails框架中的ActiveRecord库396
19.2 使用动态特征实现Scala中的动态调用397
19.3 关于DSL的一些思考402
19.4 本章回顾与下一章 提要402
第20章 Scala的领域特定语言403
20.1 DSL示例:Scala中XML和JSON DSL404
20.2 内部DSL406
20.3 包含解析组合子的外部DSL410
20.3.1 关于解析组合子410
20.3.2 计算工资单的外部DSL410
20.4 内部DSL与外部DSL:最后的思考413
20.5 本章回顾与下一章 提要413
第21章 Scala工具和库414
21.1 命令行工具414
21.1.1 命令行工具:scalac414
21.1.2 Scala命令行工具418
21.1.3 scalap和javap命令行工具421
21.1.4 scaladoc命令行工具422
21.1.5 fsc命令行工具422
21.2 构建工具422
21.2.1 SBT:Scala标准构建工具423
21.2.2 其他构建工具425
21.3 与IDE或文本编辑器集成425
21.4 在Scala中应用测试驱动开发426
21.5 第三方库427
21.6 本章回顾与下一章 提要429
第22章 与Java的互操作430
22.1 在Scala代码中使用Java名称430
22.2 Java泛型与Scala泛型430
22.3 JavaBean的性质432
22.4 AnyVal类型与Java原生类型433
22.5 Java代码中的Scala名称433
22.6 本章回顾与下一章 提要434
第23章 应用程序设计435
23.1 回顾之前的内容435
23.2 注解437
23.3 Trait即模块441
23.4 设计模式442
23.4.1 构造型模式443
23.4.2 结构型模式443
23.4.3 行为型模式444
23.5 契约式设计带来更好的设计446
23.6 帕特农神庙架构448
23.7 本章回顾与下一章 提要453
第24章 元编程:宏与反射454
24.1 用于理解类型的工具455
24.2 运行时反射455
24.2.1 类型反射455
24.2.2 ClassTag、TypeTag与Manifest457
24.3 Scala的高级运行时反射API458
24.4 宏461
24.4.1 宏的示例:强制不变性463
24.4.2 关于宏的最后思考466
24.5 本章回顾与下一章提要466
附录A 参考文献468
作者简介473
关于封面473
热门推荐
- 2087044.html
- 793005.html
- 2714454.html
- 1755289.html
- 2005748.html
- 2505502.html
- 1399747.html
- 2934174.html
- 232662.html
- 2475064.html
- http://www.ickdjs.cc/book_1452035.html
- http://www.ickdjs.cc/book_1620290.html
- http://www.ickdjs.cc/book_3238219.html
- http://www.ickdjs.cc/book_1528099.html
- http://www.ickdjs.cc/book_2907597.html
- http://www.ickdjs.cc/book_1116964.html
- http://www.ickdjs.cc/book_817971.html
- http://www.ickdjs.cc/book_612558.html
- http://www.ickdjs.cc/book_3788033.html
- http://www.ickdjs.cc/book_3069385.html