《Julia语言程序设计》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:魏坤编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111607571
  • 页数:430 页
图书介绍:本书系统地介绍Julia编程语言的基本概念、各种功能、编程要点,包含大量示例代码以及编程技巧。全书共16章。第1~2章介绍Julia语言的基本特点、基础概念。第3~4章介绍Julia语言的数值系统、各种运算符使用规则。第5~6章介绍类型系统,以及经典的判断、循环逻辑。第7~8章介绍函数与方法,以及Julia的核心优势——多维数组。第9~11章介绍字符串与日期处理方法以及元编程。第12章介绍与I/O相关的内容,包括流、文件操作、网络通信及序列化等。第13章介绍Julia代码的组织方式,包括模块、文件以及包。第14章介绍Julia原生提供的并行计算特性,是Julia颇具魅力的内容之一。第15章介绍Julia与C/C++、Python进行混合编程的基本方法。第16章总结了Julia编程方面的经验以及优化建议。本书内容丰富,讲解细腻,适合于所有软件开发人员,以及高等院校相关专业师生。

第1章 初识Julia 1

1.1 有用的资源 2

1.2 环境准备 4

1.2.1 二进制包安装 5

1.2.2 编译安装 7

1.3 交互式控制台 8

1.4 命名规则与关键字 11

1.5 先睹为快 12

1.5.1 Hello World 12

1.5.2 体型分布案例 13

1.5.3 小结 18

第2章 基础概念 19

2.1 静态与动态语言 19

2.2 内存管理 20

2.3 经典编程范式 21

第3章 数值系统 24

3.1 整型 24

3.1.1 表达方式 25

3.1.2 类型强制限定 27

3.1.3 有无符号转换 28

3.2 布尔型 29

3.3 浮点型 30

3.3.1 基本定义 31

3.3.2 零的表达 32

3.3.3 epsilon 34

3.3.4 无穷值 35

3.3.5 非数值 37

3.3.6 内置常量 37

3.4 有理数型 38

3.5 复数型 40

3.6 随机数 42

3.7 任意精度算术 43

第4章 运算符 46

4.1 算术运算符 46

4.2 位运算符 51

4.3 更新运算符 55

4.4 比较运算符 56

4.5 逻辑运算符 60

4.6 运算优先级 61

4.7 类型提升 62

第5章 控制逻辑 64

5.1 复合表达式 64

5.2 判断逻辑 65

5.3 循环逻辑 67

5.3.1 while 67

5.3.2 for 69

5.4 异常处理 73

5.4.1 异常触发 73

5.4.2 异常捕捉 74

第6章 类型系统 77

6.1 类型简介 77

6.2 抽象类型 78

6.3 元类型 80

6.4 类型操作 83

6.4.1 弱类型机制 83

6.4.2 类型断言 84

6.4.3 DataType 85

6.4.4 类型别称 86

6.4.5 继承关系 87

6.5 复合类型 88

6.5.1 基本定义 88

6.5.2 默认构造函数 90

6.5.3 成员访问及不可变性 91

6.5.4 单例复合类型 93

6.6 类型联合 94

6.7 TypeVar 96

6.8 类型参数化 97

6.8.1 参数化复合类型 97

6.8.2 参数化抽象类型 102

6.8.3 参数化元类型 105

6.8.4 参数化基本原理 106

6.8.5 参数化继承关系 108

6.8.6 协变与逆变 110

6.9 常用数集 112

6.9.1 元组 113

6.9.2 键值对 115

6.9.3 字典 117

6.9.4 集合 121

6.10 缺失值的表达 123

6.10.1 missing 123

6.10.2 nothing 125

6.10.3 可有可无的表达 125

第7章 函数 129

7.1 基本定义 129

7.1.1 常规结构 129

7.1.2 类型限定 130

7.1.3 共享传参 132

7.1.4 数集展开式调用 133

7.1.5 多返回值 134

7.2 参数传递方式 134

7.2.1 默认参数 134

7.2.2 键值参数 135

7.2.3 可变参数 137

7.3 函数对象 140

7.3.1 Function类型 140

7.3.2 函数作为参数 141

7.3.3 函数作为返回值 143

7.4 匿名函数 144

7.5 参数化方法 146

7.6 多态分发 148

7.7 复合类型构造方法 153

7.7.1 外部构造方法 153

7.7.2 内部构造方法 155

第8章 多维数组 158

8.1 创建数组 158

8.1.1 串联方式 160

8.1.2 辅助构造函数 163

8.1.3 范围表达式 164

8.1.4 推导式 168

8.2 索引访问 169

8.3 遍历迭代 176

8.4 子数组与视图 179

8.4.1 范围切片 179

8.4.2 逻辑索引 180

8.4.3 局部视图 180

8.5 稀疏数组 182

8.5.1 典型稀疏结构 183

8.5.2 结构转换 184

8.5.3 内容映射 186

8.6 矢量化计算 189

8.6.1 map函数 189

8.6.2 广播 192

8.6.3 点操作 193

8.6.4 数组运算符 196

8.7 排序 197

8.8 查找 200

8.9 missing作为元素 205

8.10 线性代数中的矩阵处理 207

8.10.1 矩阵操作 207

8.10.2 特殊矩阵 208

8.10.3 矩阵分解 211

第9章 字符串 217

9.1 字符 217

9.2 String对象 220

9.2.1 表达 220

9.2.2 索引 221

9.2.3 遍历 223

9.2.4 子串 224

9.3 变量替换 225

9.4 正则表达式 226

9.5 常用操作 229

9.5.1 连接 229

9.5.2 比较 232

9.5.3 搜索 232

9.5.4 替换 234

9.5.5 分割 235

9.6 字节数组 237

9.7 与数值的转换 239

第10章 元编程 241

10.1 Symbol类型 241

10.2 Expr类型 243

10.2.1 构造 243

10.2.2 衍生 248

10.3 宏 249

10.3.1 定义 250

10.3.2 调用 250

10.3.3 预定义宏 251

第11章 时间与日期 255

11.1 类型 255

11.2 构造 257

11.3 访问 260

11.4 解析 262

11.5 运算 265

11.5.1 早晚比较 265

11.5.2 时长计算 267

11.5.3 时间序列 269

11.5.4 周期舍入 270

11.6 属性 273

第12章 流与IO 275

12.1 标准流 275

12.2 文件操作 278

12.3 读写缓存 281

12.4 流的回溯 284

12.5 序列化 287

12.6 网络通信 290

第13章 组织结构 294

13.1 模块 294

13.1.1 基本定义 294

13.1.2 标准模块 296

13.1.3 模块路径 298

13.1.4 预编译 298

13.2 模块与脚本文件 299

13.3 变量域 300

13.3.1 全局域 302

13.3.2 局部域 302

13.3.3 let关键字 305

13.4 包 309

13.4.1 管理机制 309

13.4.2 安装移除 312

13.4.3 更新固化 317

13.4.4 小结 318

第14章 并行计算 319

14.1 基础概念 319

14.1.1 进程与线程 319

14.1.2 条件变量 320

14.2 协程调度 321

14.3 数据通道 325

14.3.1 Channel对象 325

14.3.2 通道绑定 330

14.4 远程调用与远程引用 332

14.5 共享数组 345

14.6 方法小结 348

第15章 混合编程 351

15.1 运行外部程序 351

15.2 调用C/C++ 352

15.2.1 链接库操作 352

15.2.2 函数调用 353

15.2.3 数据访问 356

15.2.4 C++接口 358

15.3 嵌入C/C++ 358

15.4 与Python互调 362

第16章 Julia编程规范 364

16.1 文档注释 364

16.2 高性能编程建议 368

16.2.1 类型 369

16.2.2 函数 373

16.2.3 数组 377

16.2.4 IO 381

16.2.5 其他 381

16.3 与其他语言的异同 382

16.3.1 与Python相比 382

16.3.2 与Matlab相比 384

16.3.3 与R相比 385

16.4 Julia代码风格 387

第17章 编程实战 389

17.1 决策树基本概念 389

17.2 决策树分类器的实现 391

17.3 随机森林算法的构建 406

附录A 内置异常类型 409

附录B 内置系统常量 411

附录C 字符串操作函数 413

附录D 常用包简介 416

后记 428