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

- (瑞典)JOEARMSTRONG著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115188694
- 出版时间:2008
- 标注页数:427页
- 文件大小:39MB
- 文件页数:444页
- 主题词:程序语言-程序设计
PDF下载
下载说明
Erlang程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 引言1
1.1路线图1
1.2正式起航3
1.3致谢3
第2章 入门5
2.1概览5
阶段1:茫然无绪5
阶段2:初窥门径5
阶段2.5:观其大略,不求甚解6
阶段3:运用自如6
重中之重6
2.2 Erlang安装7
二进制发布版7
从源代码创建Erlang8
使用CEAN8
2.3本书代码8
2.4启动shell9
2.5简单的整数运算10
2.6变量11
变量不变12
模式匹配13
单一赋值为何有益于编写质量更高的代码14
2.7浮点数15
2.8原子16
2.9元组17
创建元组18
从元组中提取字段值18
2.10列表19
术语20
定义列表20
从列表中提取元素20
2.11字符串21
2.12再论模式匹配22
第3章 顺序型编程24
3.1模块24
3.2购物系统——进阶篇28
3.3同名不同目的函数31
3.4 fun31
以fun为参数的函数32
返回fun的函数33
定义你自己的抽象流程控制34
3.5简单的列表处理35
3.6列表解析38
快速排序39
毕达哥拉斯三元组40
变位词40
3.7算术表达式41
3.8断言41
断言序列42
断言样例43
true断言的使用44
过时的断言函数44
3.9记录44
创建和更新记录45
从记录中提取字段值45
在函数中对记录进行模式匹配46
记录只是元组的伪装46
3.10 case/if表达式46
case表达式47
if表达式47
3.11以自然顺序创建列表48
3.12累加器48
第4章 异常50
4.1异常50
4.2抛出异常51
4.3 try...catch51
缩减版本53
使用try...catch的编程惯例53
4.4 catch54
4.5改进错误信息55
4.6 try...catch的编程风格55
经常会返回错误的程序55
出错几率比较小的程序56
4.7捕获所有可能的异常56
4.8新老两种异常处理风格56
4.9栈跟踪57
第5章 顺序型编程进阶58
5.1 BIF58
5.2二进制数据58
5.3比特语法60
16bit色彩的封包与解包60
比特语法表达式61
高级比特语法样例62
5.4小问题集锦67
apply68
属性68
块表达式71
布尔类型71
布尔表达式72
字符集72
注释72
epp73
转义符73
表达式和表达式序列74
函数引用74
包含文件75
列表操作符++和--75
宏76
在模式中使用匹配操作符77
数值类型78
操作符优先级79
进程字典79
引用80
短路布尔表达式80
比较表达式81
下划线变量82
第6章 编译并运行程序83
6.1开启和停止Erlang shell83
6.2配置开发环境84
为文件加载器设定搜索路径84
在系统启动时批量执行命令85
6.3运行程序的几种不同方法86
在Erlang shell中编译运行86
在命令提示符下编译运行86
把程序当作escript脚本运行88
用命令行参数编程89
6.4使用makefile进行自动编译90
makefile模板90
定制makefile模板92
6.5在Erlang shell中的命令编辑93
6.6解决系统死锁93
6.7如何应对故障93
未定义/遗失代码94
makefile不能工作94
shell没有响应95
6.8获取帮助96
6.9调试环境96
6.10崩溃转储97
第7章 并发98
第8章 并发编程101
8.1并发原语101
8.2一个简单的例子102
8.3客户/服务器介绍103
8.4创建一个进程需要花费多少时间107
8.5带超时的receive109
只有超时的 receive109
超时时间为0的receive109
使用一个无限等待超时进行接收110
实现一个计时器110
8.6选择性接收111
8.7注册进程112
8.8如何编写一个并发程序113
8.9尾递归技术114
8.10使用MFA启动进程115
8.11习题115
第9章 并发编程中的错误处理116
9.1链接进程116
9.2on_exit处理程序117
9.3远程错误处理118
9.4错误处理的细节118
捕获退出的编程模式119
捕获退出信号(进阶篇)120
9.5错误处理原语125
9.6链接进程集126
9.7监视器126
9.8存活进程127
第10章 分布式编程128
10.1名字服务129
第一步:一个简单的名字服务130
第二步:在同一台机器上,客户端运行于一个节点而服务器运行于第二个节点131
第三步:让客户机和服务器运行于同一个局域网内的不同机器上132
第四步:在因特网上的不同主机上分别运行客户机和服务器133
10.2分布式原语134
10.3分布式编程中使用的库136
10.4有cookie保护的系统136
10.5基于套接字的分布式模式137
lib_chan137
服务器代码138
第11章 IRC Lite141
11.1消息序列图142
11.2用户界面143
11.3客户端程序144
11.4服务器端组件147
聊天控制器147
聊天服务器148
群组管理器149
11.5运行程序150
11.6聊天程序源代码151
聊天客户端151
Lib_chan配置154
聊天控制器154
聊天服务器155
聊天群组156
输入输出窗口157
11.7习题159
第12章 接口技术160
12.1端口161
12.2为一个外部C程序添加接口161
C程序162
Erlang程序164
12.3 open_port167
12.4内联驱动167
12.5注意170
第13章 对文件编程172
13.1库的组织结构172
13.2读取文件的不同方法172
从文件中读取所有Erlang数据项174
从文件的数据项中一次读取一项174
从文件中一次读取一行数据176
将整个文件的内容读入到一个二进制数据中176
随机读取一个文件176
读取ID3标记177
13.3写入文件的不同方法179
向一个文件中写入一串Erlang数据项179
向文件中写入一行181
一步操作写入整个文件181
在随机访问模式下写入文件183
13.4目录操作183
13.5查询文件的属性184
13.6复制和删除文件185
13.7小知识185
13.8一个搜索小程序186
第14章 套接字编程189
14.1使用TCP189
从服务器上获取数据189
一个简单的TCP服务器192
改进服务器195
注意196
14.2控制逻辑197
主动型消息接收(非阻塞)197
被动型消息接收(阻塞)198
混合型模式(半阻塞)198
14.3连接从何而来199
14.4套接字的出错处理199
14.5 UDP200
最简单的UDP服务器和客户机201
一个计算阶乘UDP的服务器201
关于UDP协议的其他注意事项203
14.6向多台机器广播消息203
14.7 SHOUTcast服务器204
SHOUTcast协议205
SHOUTcast服务器的工作机制205
SHOUTcast服务器的伪代码206
运行SHOUTcast服务器211
14.8进一步深入212
第15章 ETS和DETS:大量数据的存储机制213
15.1表的基本操作214
15.2表的类型214
15.3 ETS表的效率考虑215
15.4创建ETS表216
15.5 ETS程序示例217
三字索引迭代器218
构造表219
构造表有多快219
访问表有多快220
胜出的是220
15.6 DETS222
15.7我们没有提及的部分224
15.8代码清单225
第16章 OTP概述228
16.1通用服务器程序的进化路线229
server 1:原始服务器程序229
server 2:支持事务的服务器程序230
server 3:支持热代码替换的服务器程序231
server 4:同时支持事务和热代码替换233
server 5:压轴好戏234
16.2 gen_server起步236
第一步:确定回调模块的名称237
第二步:写接口函数237
第三步:编写回调函数237
16.3 gen_server回调的结构240
启动服务器程序时发生了什么240
调用服务器程序时发生了什么240
调用和通知241
发给服务器的原生消息241
Hasta la Vista, Baby(服务器的终止)242
热代码替换242
16.4代码和模板243
gen_server模板243
my_bank245
16.5进一步深入246
第17章 Mnesia: Erlang数据库247
17.1数据库查询247
选取表中所有的数据248
选取表中的数据249
按条件选取表中的数据249
从两个表选取数据(关联查询)250
17.2增删表中的数据250
增加一行251
删除一行251
17.3 Mnesia事务252
取消一个事务253
加载测试数据255
do()函数255
17.4在表中保存复杂数据256
17.5表的类型和位置257
创建表258
表属性的常见组合259
表的行为260
17.6创建和初始化数据库260
17.7表查看器261
17.8进一步深入262
17.9代码清单262
第18章 构造基于OTP的系统266
18.1通用的事件处理267
18.2错误日志270
记录一个错误270
配置错误日志270
分析错误274
18.3警报管理275
18.4应用服务277
素数服务277
面积服务278
18.5监控树279
18.6启动整个系统282
18.7应用程序285
18.8文件系统的组织287
18.9应用程序监视器288
18.10进一步深入289
18.11我们如何创建素数290
第19章 多核小引292
第20章 多核编程294
20.1如何在多核的CPU上更有效率地运行295
使用大量进程295
避免副作用295
顺序瓶颈296
20.2并行化顺序代码297
20.3小消息、大计算300
20.4映射-归并算法和磁盘索引程序303
映射-归并算法303
全文检索307
索引器的操作308
运行索引器309
评论310
索引器的代码310
20.5面向未来的成长311
附录A 给我们的程序写文档312
附录B Microsoft Windows环境下的Erlang环境316
附录C 资源318
附录D 套接字应用程序321
附录E 其他335
附录F 模块和函数参考351
索引415
热门推荐
- 3612148.html
- 628660.html
- 1885260.html
- 423613.html
- 1194439.html
- 594973.html
- 2026173.html
- 3664506.html
- 988463.html
- 532389.html
- http://www.ickdjs.cc/book_2149352.html
- http://www.ickdjs.cc/book_2876611.html
- http://www.ickdjs.cc/book_3612796.html
- http://www.ickdjs.cc/book_1926234.html
- http://www.ickdjs.cc/book_3229347.html
- http://www.ickdjs.cc/book_1835181.html
- http://www.ickdjs.cc/book_3254717.html
- http://www.ickdjs.cc/book_2441889.html
- http://www.ickdjs.cc/book_2229574.html
- http://www.ickdjs.cc/book_3844705.html