图书介绍

Elixir程序设计PDF|Epub|txt|kindle电子书版本下载

Elixir程序设计
  • (美)DAVETHOMAS著;杜万,黄明信译 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121282645
  • 出版时间:2016
  • 标注页数:318页
  • 文件大小:30MB
  • 文件页数:342页
  • 主题词:程序语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

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

热门推荐