由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
正版 Lua设计与实现 codedump 人民邮电出版社 9787115465375 书
¥ ×1
第1章 概述 1
1.1 前世今生 1
1.2 源码组织 5
1.3 Lua虚拟机工作流程 6
第一部分 基础数据类型
第2章 Lua中的数据类型 10
2.1 C语言中实现通用数据结构的一般做法 10
2.2 Lua通用数据结构的实现 11
第3章 字符串 16
3.1 概述 16
3.2 字符串实现 18
第4章 表 24
4.1 数据结构 24
4.2 操作算法 26
4.2.1 查找 26
4.2.2 新增元素 27
4.2.3 迭代 33
4.2.4 取长度操作 33
第二部分 虚拟机
第5章 Lua虚拟机 36
5.1 Lua执行过程概述 36
5.2 数据结构与栈 43
5.3 指令的解析 46
5.4 指令格式 47
5.5 指令的执行 53
5.6 调试工具 55
5.6.1 GDB调试 55
5.6.2 使用ChunkSpy 57
第6章 指令的解析与执行 61
6.1 Lua词法 61
6.2 赋值类指令 64
6.2.1 局部变量 64
6.2.2 全局变量 70
6.3 表相关的操作指令 72
6.3.1 创建表 72
6.3.2 查询表 78
6.3.3 元表的实现原理 79
6.4 函数相关的操作指令 84
6.4.1 相关数据结构 85
6.4.2 函数的定义 90
6.4.3 函数的调用与返回值的处理 94
6.4.4 调用成员函数 99
6.4.5 UpValue与闭包 100
6.5 数值计算类指令 105
6.6 关系逻辑类指令 107
6.6.1 相关指令 108
6.6.2 理论基础 108
6.6.3 相关数据结构及函数 111
6.6.4 关系类指令 114
6.6.5 逻辑类指令 117
6.7 循环类指令 121
6.7.1 理论基础 122
6.7.2 for循环指令 122
6.7.3 其他循环 129
第三部分 独立功能的实现
第7章 GC算法 132
7.1 原理 132
7.2 数据结构 135
7.3 具体流程 138
7.3.1 新创建对象 138
7.3.2 初始化阶段 140
7.3.3 扫描标记阶段 142
7.3.4 回收阶段 147
7.3.5 结束阶段 148
7.4 进度控制 150
第8章 环境与模块 152
8.1 环境相关的变量 152
8.2 模块 157
8.2.1 模块的加载 157
8.2.2 模块的编写 159
8.2.3 模块的热更新原理 161
第9章 调试器工作原理 163
9.1 钩子功能 163
9.2 得到当前程序信息 164
9.3 打印变量 165
9.4 查看文件内容 166
9.5 断点的添加 166
9.6 查看当前堆栈信息 167
9.7 step和next指令的实现 167
第10章 异常处理 169
10.1 原理 169
10.2 Lua实现 170
第11章 协程 175
11.1 概念 175
11.2 相关的API 177
11.3 实现 180
11.4 对称协程和非对称协程 184
附录A 参考资料 187
网名codedump长期从事互联网后端服务开发工作。曾经在网易等公司从事游戏服务器后台开发,在网络游戏开发工作期间接触到使用C++编写服务核心引擎和使用Lua脚本编写游戏逻辑的技术组合后,对Lua产生了浓厚的兴趣,遂开始研究其实现原理,陆续公布于网络。个人博客:www.codedump.info。
第一本揭示Lua实现原理的图书 经典的纯C语言项目分析 一线开发人员倾力打造 Lua是一种可嵌入、轻量、快速、功能强大的脚本语言,使用较为广泛,主要用在游戏领域。另外,基于Nginx的OpenResty也是使用Lua来编写脚本的,很多服务器(如Redis)也支持使用Lua来编写脚本。 作为一门诞生已经超过20年的语言,它在设计上是非常克制的。以Lua 5.1.4版本来说,其解释器加上周边的库函数等也就不过一万多行的代码量,而如果再进行精简,只需要吃透最核心的几千行代码就可以了。 另外,作为一门以纯C代码编写的项目,Lua代码优美、结构组织紧凑,是教科书般经典的C语言项目。 本书讨论了Lua的设计原理,首先讲解了数据结构、字符串以及表类型的实现原理,接着讨论了虚拟机的实现,最后讨论了垃圾回收、模块实现、热更新、协程等的实现原理。 本书适用于以下读者: 希望能够进一步了解Lua内部实现原理的用户; 对程序语言设计感兴趣的读者。
本书首先介绍了Lua中的数据结构,比如通用数据是如何表示的、Lua的字符串以及表类型的实现原理,接着讨论了Lua虚拟机的实现,并且将其中重点的一些指令进行了分类讲解,最后讨论了垃圾回收、模块实现、热更新、协程等的实现原理。
一本揭示Lua实现原理的图书 经典的纯C语言项目分析 一线开发人员倾力打造 Lua是一种可嵌入、轻量、快速、功能强大的脚本语言,使用较为广泛,主要用在游戏领域。另外,基于Nginx的OpenResty也是使用Lua来编写脚本的,很多服务器(如Redis)也支持使用Lua来编写脚本。 作为一门诞生已经超过20年的语言,它在设计上是克制的。以Lua 5.1.4版本来说,其解释器加上周边的库函数等也就不过一万多行的代码量,而如果再进行精简,只需要吃透核心的几千行代码就可以了。 另外,作为一门以纯C代码编写的项目,Lua代码优美、结构组织紧凑,是教科书般经典的C语言项目。 本书讨论了Lua的设计原理,先讲解了数据结构、字符串以及表类型的实现原理,接着讨论了虚拟机的实现,讨论了垃圾回收、模块实现、热更新、协程等的实现原理。 本书适用于以下读者: ● 希望能够进一步了解Lua内部实现原理的用户; ● 对程序语言设计感兴趣的读者。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格