下载地址:
下载地址1资源简介:
中文名: Lua程序设计:第2版原名: Programming in Lua, Second Edition别名: 脚本编程, Lua程序设计, 游戏编程, 游戏开发作者: (巴西)Roberto Ierusalimschy译者: 周惟迪资源格式: PDF版本: 第2版出版社: 电子工业出版社书号: 9787121061875发行时间: 2008年5月地区: 大陆语言: 简体中文简介: 内容介绍: 本书是《lua程序设计》(第1版)的更新和扩展,在第1版的基础上进行了较大的改进,并且加入了很多新的知识点. 介绍了lua语言所具有的功能,并使用大量示例来演示如何将它们运用到实际的任务中 深入地介绍了lua中唯一的数据结构——table,还讨论了数据结构、持久化、包和面向对象编程. 展示了lua的标准库,对那些想将lua作为一门独立语言来使用的开发者特别有用,每一章介绍一个库,包括数学库、table库、字符串库、i/o库、操作系统库、调试库. 介绍lua与c语言之间的api,这是为那些想用c语言来访问lua功能的人准备的. 本书可作为广大lua爱好者的自学用书,也可以作为大学相相关专业的教学参考书.作者介绍: 周惟迪(www.zhouweidi.name),在少年时由于喜好计算机游戏而喜爱上计算机编程,对各类开发技术皆有涉猎。曾从事过2年游戏程序设计专业的教育工作,之后在上海Ubisoft工作,参与Splinter Cell4(Xbox 360)、Rayman 4(Xbox 360)等项目开发。现就职于Epic Games China,从事MMO引擎,以及基于Unreal 3的MMO游戏开发。常在业余时间参与各种软件的开发,同时翻译过《Direct3D游戏编程入门教程》一书。 目录: 第1部分第1章 开始1.1 程序块(chunk)1.2 词法规范1.3 全局变量1.4 解释器程序(the dtand-slone interpreter)第2章 类型与值2.1 nil(空)2.2 boolean(布尔)2.3 number(数字)2.4 string(字符串)2.5 table(表)2.6 function(函数)2.7 userdata(自定义类型)和thread(线程)第3章 表达式3.1 算术操作符3.2 关系操作符3.3 逻辑操作符3.4 字符串连接3.5 优先级3.6 table构造式(table constructor)第4章 语句4.1 赋值4.2 局部变量与块(block)4.3 控制结构4.3.1 if then else4.3.2 while4.3.3 repeat4.3.4 数字型for(numeric for)4.3.5 泛型for(generic for)4.4 break与return第5章 函数5.1 多重返回值(multiple results)5.2 变长参数(variable number of arguments)5.3 具名实参(named arguments)第6章 深入函数6.1 closure(闭合函数)6.2 非全局的函数(non-global function)6.3 正确的尾调用(proper tail call)第7章 迭代器与泛型for7.1 迭代器与closure7.2 泛型for的语义7.3 无状态的迭代器7.4 具有复杂状态的迭代器7.5 真正的迭代器第8章 编译、执行与错误8.1 编译8.2 C代码8.3 错误(error)8.4 错误处理与异常8.5 错误消息与追溯(traceback)第9章 协同程序(coroutine)9.1 协同程序基础9.2 管道(pipe)与过滤器(filter)9.3 以协同程序实现迭代器9.4 非抢先式的(non-preemptive)多线程第10章 完整的示例10.1 数据描述10.2 马尔可夫链(markov chain)算法第2部分第11章 数据结构11.1 数组11.2 矩阵与多维数组11.3 链表11.4 队列与双向队列11.5 集合与无序组(bag)11.6 字符串缓冲11.7 图第12章 数据文件与持久性12.1 数据文件12.2 串行化(Serialization)12.2.1 保存无环的table12.2.2 保存有环的table第13章 元表(metatable)与元方法(meatmethod)13.1 算术类的元方法13.2 关系类的元方法13.3 库定义的元方法13.4 table访问的元方法13.4.1 _ _index元方法13.4.2 _ _newindex元方法13.4.3 具有默认值的table13.4.4 跟踪table的访问13.4.5 只读的table第14章 环境14.1 具有动态名字的全局变量14.2 全局变量声明14.3 非全局的环境第15章 模块与包15.1 require函数15.2 编写模块的基本方法15.3 使用环境15.4 module函数15.5 子模块与包第16章 面向对象编程16.1 类16.2 继承16.3 多重继承16.4 私密性16.5 单一方法(single-method)做法第17章 弱引用table17.1 备忘录(memoize)函数17.2 对象属性17.3 回顾table的默认值第3部分第18章 数学库第19章 table库19.1 插入和删除19.2 排序19.3 连接第20章 字符串库20.1 基础字符串函数20.2 模式匹配(pattern-matching)函数20.2.1 string.find函数20.2.2 string.match函数20.2.3 string.gsub函数20.2.4 string.gmatch函数20.3 模式20.4 捕获(capture)20.5 替换20.5.1 URL编码20.5.2 tab扩展20.6 技巧第21章 I/O库21.1 简单I/O模型21.2 完整I/O模型21.2.1 性能小诀窍21.2.2 二进制文件21.2.3 其他文件操作第22章 操作系统库22.1 日期和时间22.2 其他系统调用第23章 调试库23.1 自省机制23.1.1 访问局部变量23.1.2 访问非局部的变量(non-local varible)23.1.3 访问其他协同程序23.2 钩子23.3 性能剖析(profile)第4部分第24章 C API概述24.1 第一个示例24.2 栈24.2.1 压入元素24.2.2 查询元素24.2.3 其他栈操作24.3 CAPI中的错误处理24.3.1 应用程序代码中的错误处理24.3.2 库代码中的错误处理第25章 扩展应用程序25.1 基础25.2 table操作25.3 调用Lua函数25.4 一个通用的调用函数第26章 从Lua调用C26.1 C函数26.2 C模块第27章 编写C函数的技术27.1 数组操作27.2 字符串操作27.3 在C函数中保存状态27.3.1 注册表(registry)27.3.2 C函数的环境27.3.3 upvalue第28章 用户自定义类型28.1 userdata28.2 元表28.3 面向对象的访问28.4 数组访问28.5 轻量级userdata(light userdata)第29章 管理资源29.1 目录迭代器29.2 XML分析器第30章 线程和状态30.1 多个线程30.2 Lua状态第31章 内存管理31.1 分配函数31.2 垃圾收集器31.2.1 原子操作31.2.2 垃圾收集器的API
飞网下载站,免费下载共享资料,内容涉及教育资源、专业资料、IT资源、娱乐生活、经济管理、办公文书、游戏资料等。