图书介绍
Elixir程序设计PDF|Epub|txt|kindle电子书版本下载
![Elixir程序设计](https://www.shukui.net/cover/59/30063439.jpg)
- (美)DAVETHOMAS著;杜万,黄明信译 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121282645
- 出版时间:2016
- 标注页数:318页
- 文件大小:30MB
- 文件页数:342页
- 主题词:程序语言-程序设计
PDF下载
下载说明
Elixir程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 接受现实1
编程时应该关注数据转换1
借助管道来组合转换2
函数是数据转换器3
安装Elixir3
运行Elixir4
iex——交互式Elixir4
编译和运行8
对阅读本书的建议9
练习9
换一种方式思考10
第一部分 常规编程12
第2章 模式匹配12
赋值:并非如你所料12
更复杂的匹配13
轮到你了15
用_(下画线)忽略匹配值15
每次匹配变量仅绑定一次15
轮到你了17
从另一个角度来看等号17
第3章 不可变性18
你已经拥有了(一些)不可变数据18
不可变的数据才是已知的19
不可变性对性能的影响20
复制数据20
垃圾回收20
用不可变数据编写程序21
第4章 Elixir基础22
内置类型22
值类型23
整数23
浮点数23
原子24
区间24
正则表达式24
系统类型25
PID和端口25
引用25
收集类型26
元组26
列表27
散列表28
二进制型29
命名、源文件、约定、运算符和其他30
真值30
运算符31
小结32
第5章 匿名函数33
函数和模式匹配34
轮到你了35
一个函数,多个函数体35
编写更长的代码36
轮到你了37
能返回函数的函数37
记住原始环境的函数38
参数化函数39
轮到你了39
将函数作为参数来传递40
&运算符40
轮到你了42
函数是核心42
第6章 模块与命名函数43
编译模块43
函数体是代码块44
轮到你了45
函数调用与模式匹配45
轮到你了48
哨兵子句48
哨兵子句的限制49
默认参数50
轮到你了53
私有函数53
|>——美妙的管道运算符54
模块55
模块指令57
import指令57
alias指令58
require指令58
模块属性58
模块名:Elixir、Erlang和原子类型59
调用Erlang的库函数60
寻找函数库60
轮到你了61
第7章 列表与递归62
头部和尾部62
使用头部和尾部来处理列表63
iex如何显示列表64
使用头部和尾部来构造列表66
创建映射函数67
在递归过程中跟踪值68
轮到你了69
生成求和函数69
轮到你了70
更复杂的列表模式71
列表的列表71
轮到你了74
List模块实战75
与列表友好相处76
第8章 字典:散列表、散列字典、关键字列表、集合与结构体77
如何在散列表、散列字典和关键字列表之间做选择77
字典78
模式匹配和更新散列表79
模式匹配不能绑定键81
更新散列表82
散列表与结构体82
访问结构体的另一种方式84
嵌套字典结构85
嵌套访问器和非结构体86
动态(运行时)嵌套访问器87
集合88
能力越大,诱惑越大89
第9章 番外篇——类型是什么90
第10章 处理收集——Enum与Stream92
Enum——处理收集92
关于排序的说明95
轮到你了96
Stream——延迟处理的枚举类型96
流是可组合的枚举器97
无限流99
自定义流99
流在实际中的应用104
Collectable协议104
推导式105
推导式也可以处理二进制位106
作用域与推导式107
推导式的返回值107
轮到你了108
感动过往的神109
第11章 字符串与二进制型110
字符串字面量110
Heredoc111
魔术符112
“字符串”这个名称113
单引号字符串——字符编码列表114
轮到你了116
二进制型117
双引号字符串是二进制型118
字符串与Elixir库118
轮到你了124
二进制型与模式匹配124
用二进制型来处理字符串124
轮到你了125
熟悉却又陌生126
第12章 控制流127
if与unless127
cond128
case131
抛出异常133
包含异常的设计133
四两拨千斤134
轮到你了134
第13章 组织项目136
项目:从GitHub获取issue136
我们的代码将如何工作137
任务:用mix来创建我们的新项目137
创建项目树138
转换:解析命令行140
进阶:编写一些基本的测试142
轮到你了144
转换:从GitHub获取数据144
任务:使用外部库145
寻找库146
为项目添加库146
轮到你了148
回到转换148
转换:转换响应内容151
不在hex里的依赖项152
应用程序配置152
转换:为数据排序153
转换:取前n条155
轮到你了156
转换:格式化表格156
任务:创建命令行可执行程序159
任务:添加日志161
任务:测试代码注释163
任务:创建项目文档167
使用转换数据的方法来编写代码169
轮到你了170
第二部分 并发编程172
第14章 运用多进程172
简单的进程173
在进程间发送消息174
处理多条消息175
递归、循环与栈178
进程开销178
轮到你了181
进程何时结束182
关联两个进程183
监控进程185
轮到你了186
并行map——Erlang版本的“Hello,World”186
轮到你了187
斐波那契数服务器188
任务调度器189
轮到你了192
代理——一个难题192
以进程的方式来思考194
第15章 节点——分布式服务的关键195
命名节点195
轮到你了197
节点、cookie与安全198
给你的进程命名199
何时给进程命名202
轮到你了202
I/O、PID与节点203
轮到你了204
节点是分布式的基础205
第16章 OTP:服务器206
一些OTP的定义206
OTP服务器207
状态和单个服务器207
我们的第一个OTP服务器208
轮到你了210
单向调用210
跟踪服务器的执行情况212
轮到你了214
GenServer回调函数214
给进程命名216
整理接口217
轮到你了218
第17章 OTP:应用程序监视器220
应用程序监视器与工作进程220
轮到你了223
管理重启前后的进程状态223
应用程序监视器是可靠性的核心229
轮到你了229
第18章 OTP:应用程序230
这不是传统的应用程序230
应用程序规范文件231
将Sequence程序转变为OTP应用程序231
关于应用参数的更多信息234
监视是可靠性的基础234
轮到你了235
热代码交换235
OTP很大——难以置信的大241
轮到你了241
第19章 任务与代理242
任务242
任务与监视243
代理244
更大的例子246
使其分布式运行248
使用代理与任务,还是GenServer249
第三部分 更高级的Elixir252
第20章 宏与代码求值252
实现if语句252
宏注入代码254
装载次序255
quote函数256
将内部表示作为代码使用256
unquote函数258
展开列表——unquote_splicing259
回到我们的myif宏260
轮到你了261
使用绑定来注入值261
宏是卫生的263
执行代码片段的其他方法264
宏与运算符265
深入研究266
更进一步266
轮到你了267
第21章 连接多个模块:行为与use268
行为268
定义行为268
声明行为269
use与_using_270
放到一起——跟踪方法调用270
使用use275
轮到你了275
第22章 协议——多态函数277
定义协议277
实现协议278
可用的类型279
轮到你了280
协议和结构体280
内置协议:Access281
内置协议:Enumerable282
内置协议:String.Chars285
内置协议:Inspect286
协议就是多态288
轮到你了288
第23章 更酷的玩意儿290
自定义魔术符290
获取选项292
轮到你了293
多应用的umbrella项目294
创建umbrella项目295
创建子项目295
LineSigil项目296
Evaluator项目296
连接子项目297
别急!还有更多炫酷的玩意儿!299
附录A 异常:raise与try,catch与throw300
附录B 类型规范与类型检查306