• Scala编程(第5版)
21年品牌 40万+商家 超1.5亿件商品

Scala编程(第5版)

全新正版现货

139.9 7.4折 188 全新

库存2件

四川成都
认证卖家担保交易快速发货售后保障

作者(德)马丁·奥德斯基 著

出版社电子工业出版社

ISBN9787121428326

出版时间2022-02

装帧平装

开本128开

纸张胶版纸

定价188元

货号29373968

上书时间2024-07-13

天涯淘书阁

五年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
正版全新
商品描述

编辑推荐】:

《Scala编程(第5版)》是Scala的权威图书,涵盖语言基础与重要类库,可被奉为圭臬的领域重要参考书。。Scala是Java平台上的一门功能强大的主流语言,它以独到的方式将面向对象和函数式编程的概念有机地结合在一起,供开发者使用。本书由Scala语言设计者编写,将循序渐进地向你介绍Scala编程语言和它背后的设计理念。本书几经迭代,编排、组织精细。开始几章教你足够多的基础知识,让你直接上手用Scala处理简单任务。本书严格遵循这样的原则:新概念都基于已出现过的概念,通过阶梯式教学,让你逐步掌握语言及其背后的设计理念。第5版是重磅新版,全面升到Scala 3.0,并对以下特性进行详细介绍:


√枚举和代数数据类型


√上下文参数


√扩展方法


√安静语法和可选花括号


√特质参数


√并集类型和交集类型


√导出子句


√顶层定义



内容简介】:

本书由直接参与 Scala 开发的一线人员编写,深入介绍了 Scala 这门结合面向对象和函数式的编程语言的核心特性和设计取舍。继第 4 版后,时隔一年,本书迎来重大更新,内容覆盖 Scala 3.0,对新的缩进语法、并集类型、交集类型、枚举、代数数据类型、上下文参数、特质参数、扩展方法、类型族等都有详细介绍。本书适合有一定编程经验的开发者阅读,尤其是对 Scala 3.0 新特性感兴趣的开发者朋友。即便是不直接使用 Scala 的读者,也能从本书中学到大量关于函数式和面向对象的编程概念和技巧。



作者简介】:

Martin Odersky 是 Scala 编程语言的缔造者。他是瑞士洛桑理工学院(EPFL)的教授,同时也是 Lightbend 的创始人。他的研究方向是编程语言和系统,更具体地说,就是如何将面向对象和函数式编程风格有机地结合在一起。自 2001 年起,他的主要精力集中在设计、实现和改进 Scala 上。在此之前,他作为 Java 泛型的合作设计者参与了 Java 编程语言的开发,同时也是当前 javac 参考实现的作者。他还是 ACM 院士。


Lex Spoon 是 Semmle Ltd. 的一名软件工程师。作为博士后,他在 EPFL围绕着 Scala 开展了大约两年的工作。他拥有 Georgia Tech 的博士学位,在那里他的主攻方向是动态编程语言的静态分析。除 Scala 外,他还帮助开发了各类编程语言,包括动态语言 Smalltalk、科学计算语言 X10,以及支撑 Semmle的逻辑编程语言。他和他的夫人一起生活在 Atlanta,他们有两只猫和一只吉娃娃。


Bill Venners 是 Artima Inc.的总裁,Artima 开发者网站的发行人,提供Scala 咨询、培训、书籍和工具。他著有《深入 Java 虚拟机》,这是一本面向程序员讲解 Java 平台架构和内部实现原理的书。他在 JavaWorld 杂志上的专栏很受欢迎,主题涵盖 Java 内部实现、面向对象的设计和 Jini。Bill 是 ScalaCenter 咨询委员会的社区代表,还是测试框架 ScalaTest 和针对函数式、面向对象编程类库 Scalactic 的主要开发者和设计者。


Frank Sommers 是 Autospaces Inc.的创始人和总裁,该公司为金融服务行业提供自动化的工作流解决方案。在过去的 12 年间,Frank Sommers 一直是活跃的 Scala 用户,几乎每天都在使用这门编程语言。



译者:高宇翔,资深软件开发工程师和系统架构师,同时也是Scala在国内的早期布道者和实践者,曾译有《Scala编程》(第1版)、《Scala编程》(第3版)、《Scala编程》(第4版),以及《快学Scala》(第1版)、《快学Scala》(第2版)等广为人知的Scala语言技术名著。


 


中文版审校者:


钟伦甫,Scala爱好者和早期布道者。2012年在淘宝中间件团队任职技术专家期间,用Scala编写过一款名为HouseMD 的JVM诊断工具并开源。后又作为联合译者,参与了《Scala函数式编程》一书的翻译;


黄胜涛,有10年以上系统运维和8年以上软件开发经验,曾就职于携程旅行网、LOTTE,目前在上海昱科技有限公司从事DevOps方面工作。



目录】:

序 XIX 
引言 XXIII 
第1章 一门可伸缩的语言 1 
1.1 一门按需伸缩的语言 2 
1.2 是什么让Scala能屈能伸 6 
1.3 为什么要用Scala 9 
1.4 Scala寻根 17 
1.5 结语 19 
第2章 Scala入门 20 
第1步 使用Scala解释器 21 
第2步 定义变量 22 
第3步 定义函数 25 
第4步 编写Scala脚本 27 
第5步 用while做循环;用if做判断 29 
第6步 用foreach方法和for-do遍历 31 
结语 34 
第3章 Scala入门(续) 35 
第7步 用类型参数化数组 35 
第8步 使用列表 40 
第9步 使用元组 44 
第10步 使用集和映射 45 
第11步 识别函数式编程风格 50 
第12步 用map方法和for-yield变换 53 
结语 57 
第4章 类和对象 58 
4.1 类、字段和方法 58 
4.2 分号推断 63 
4.3 单例对象 64 
4.4 样例类 67 
4.5 Scala应用程序 69 
4.6 结语 71 
第5章 基础类型和操作 72 
5.1 一些基础类型 72 
5.2 字面量 73 
5.3 字符串插值 79 
5.4 操作符即方法 81 
5.5 算术操作 84 
5.6 关系和逻辑操作 85 
5.7 位运算操作 87 
5.8 对象相等性 88 
5.9 操作符优先和结合律 90 
5.10 富包装类 93 
5.11 结语 94 
第6章 函数式对象 95 
6.1 Rational类的规格定义 95 
6.2 构建Rational实例 96 
6.3 重新实现toString方法 98 
6.4 检查前提条件 99 
6.5 添加字段 100 
6.6 自引用 102 
6.7 辅助构造方法 103 
6.8 私有字段和方法 105 
6.9 定义操作符 106 
6.10 Scala中的标识符 108 
6.11 方法重载 111 
6.12 扩展方法 113 
6.13 注意事项 114 
6.14 结语 115 
第7章 内建的控制结构 116 
7.1 if表达式 117 
7.2 while循环 118 
7.3 for表达式 121 
7.4 用try表达式实现异常处理 127 
7.5 match表达式 131 
7.6 没有break和continue的日子 133 
7.7 变量作用域 135 
7.8 对指令式代码进行重构 139 
7.9 结语 141 
第8章 函数和闭包 142 
8.1 方法 142 
8.2 局部函数 143 
8.3 一等函数 145 
8.4 函数字面量的简写形式 147 
8.5 占位符语法 148 
8.6 部分应用的函数 149 
8.7 闭包 152 
8.8 特殊的函数调用形式 154 
8.9 SAM类型 158 
8.10 尾递归 159 
8.11 结语 163 
第9章 控制抽象 164 
9.1 减少代码重复 164 
9.2 简化调用方代码 168 
9.3 柯里化 170 
9.4 编写新的控制结构 172 
9.5 传名参数 175 
9.6 结语 178 
第10章 组合和继承 179 
10.1 一个二维的布局类库 179 
10.2 抽象类 180 
10.3 定义无参方法 182 
10.4 扩展类 184 
10.5 重写方法和字段 187 
10.6 定义参数化字段 188 
10.7 调用超类构造方法 189 
10.8 使用override修饰符 191 
10.9 多态和动态绑定 192 
10.10 声明final成员 195 
10.11 使用组合和继承 196 
10.12 实现above、beside和toString方法 198 
10.13 定义工厂对象 201 
10.14 增高和增宽 204 
10.15 放在一起 205 
10.16 结语 207 
第11章 特质 208 
11.1 特质如何工作 208 
11.2 瘦接口和富接口 211 
11.3 作为可叠加修改的特质 214 
11.4 为什么不用多重继承 218 
11.5 特质参数 223 
11.6 结语 225 
第12章 包、引入和导出 227 
12.1 将代码放进包里 227 
12.2 对相关代码的精简访问 229 
12.3 引入 232 
12.4 隐式引入 236 
12.5 访问修饰符 237 
12.6 顶层定义 242 
12.7 导出 243 
12.8 结语 247 
第13章 样例类和模式匹配 248 
13.1 一个简单的例子 248 
13.2 模式的种类 253 
13.3 模式守卫 264 
13.4 模式重叠 265 
13.5 密封类 267 
13.6 对Option进行模式匹配 269 
13.7 到处都是模式 271 
13.8 一个复杂的例子 276 
13.9 结语 284 
第14章 使用列表 285 
14.1 List字面量 285 
14.2 List类型 286 
14.3 构建列表 287 
14.4 列表的基本操作 287 
14.5 列表模式 289 
14.6 List类的初阶方法 291 
14.7 List类的高阶方法 303 
14.8 List对象的方法 311 
14.9 同时处理多个列表 313 
14.10 理解Scala的类型推断算法 315 
14.11 结语 319 
第15章 使用其他集合类 320 
15.1 序列 320 
15.2 集和映射 324 
15.3 在可变和不可变集合之间选择 331 
15.4 初始化集合 334 
15.5 元组 337 
15.6 结语 340 
第16章 可变对象 341 
16.1 什么样的对象是可变的 341 
16.2 可被重新赋值的变量和属性 344 
16.3 案例分析:离散事件模拟 347 
16.4 用于描述数字电路的语言 348 
16.5 模拟API 351 
16.6 电路模拟 356 
16.7 结语 363 
第17章 Scala的继承关系 365 
17.1 Scala的类继承关系 365 
17.2 基本类型的实现机制 369 
17.3 底类型 371 
17.4 定义自己的值类型 372 
17.5 交集类型 376 
17.6 并集类型 377 
17.7 透明特质 380 
17.8 结语 382 
第18章 类型参数化 383 
18.1 函数式队列 383 
18.2 信息隐藏 387 
18.3 型变注解 390 
18.4 检查型变注解 396 
18.5 下界 399 
18.6 逆变 401 
18.7 上界 404 
18.8 结语 407 
第19章 枚举 408 
19.1 枚举数据类型 408 
19.2 代数数据类型 413 
19.3 泛化代数数据类型 415 
19.4 为什么说ADT是代数数据类型 416 
19.5 结语 420 
第20章 抽象成员 421 
20.1 抽象成员概览 421 
20.2 类型成员 422 
20.3 抽象的val 423 
20.4 抽象的var 424 
20.5 初始化抽象的val 425 
20.6 抽象类型 433 
20.7 路径依赖类型 436 
20.8 改良类型 438 
20.9 案例分析:货币 439 
20.10 结语 450 
第21章 上下文参数 451 
21.1 上下文参数的工作原理 452 
21.2 参数化的上下文参数类型 456 
21.3 匿名上下文参数 461 
21.4 作为类型族的参数化上下文参数 463 
21.5 上下文参数的引入 466 
21.6 上下文参数的规则 468 
21.7 当有多个上下文参数可选时 471 
21.8 调试上下文参数 473 
21.9 结语 475 
第22章 扩展方法 476 
22.1 扩展方法的基础 476 
22.2 泛化的扩展方法 479 
22.3 成组的扩展方法 481 
22.4 使用类型族 484 
22.5 针对上下文参数的扩展方法 486 
22.6 Scala如何查找扩展方法 491 
22.7 结语 492 
第23章 类型族 493 
23.1 为什么要用类型族 493 
23.2 上下文界定 499 
23.3 主方法 502 
23.4 跨界相等性 506 
23.5 隐式转换 512 
23.6 类型族案例分析:JSON序列化 515 
23.7 结语 526 
第24章 深入集合类 527 
24.1 可变和不可变集合 528 
24.2 集合的一致性 530 
24.3 Iterable特质 532 
24.4 序列型特质Seq、IndexedSeq和LinearSeq 539 
24.5 集 544 
24.6 映射 548 
24.7 具体的不可变集合类 553 
24.8 具体的可变集合类 560 
24.9 数组 565 
24.10 字符串 570 
24.11 性能特征 571 
24.12 相等性 573 
24.13 视图 574 
24.14 迭代器 579 
24.15 从头创建集合 585 
24.16 Java和Scala集合互转 587 
24.17 结语 589 
第25章 断言和测试 590 
25.1 断言 590 
25.2 用Scala写测试 592 
25.3 翔实的失败报告 594 
25.4 作为规格说明的测试 596 
25.5 基于属性的测试 599 
25.6 组织和运行测试 601 
25.7 结语 603 
术语表 604 
关于作者 627


—  没有更多了  —

以下为对购买帮助不大的评价

正版全新
此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP