大小:5.8M
更新时间:23-08-27
系统:Pc
版本:v
而lua并不帮你编写大量的代码的程序,相反的,lua仅让你用少量的代码解决关键问题。为实现这个目标,像其他语言一样lua依赖于其可扩展性。但是与其他语言不同的是,不仅用lua编写的软件易于扩展,而且用其他语言比如C/C++编写的软件也很容易使用lua扩展其功能。
一开始,lua就被设计成很容易和传统的C/C++整合的语言。这种语言的二元性带来了极大的好处。lua是一个小巧而简单的语言,因为lua不致力于做C语言已经做得很好的领域,比如:性能、底层操作以及与第三方软件的接口。lua依赖于C去做完成这些任务。lua所提供的机制是C不善于的:高级语言、动态结构、简洁、易于测试和调试等。正因为如此,lua具有良好的安全保证,自动内存管理,简便的字符串处理功能及其他动态数据的改变。
lua不仅是一种易于扩展的语言,也是一种易整合语言(glue language);lua支持基于组件的,我们可以将一些已经存在的高级组件整合在一起实现一个应用软件。一般情况下,组件使用像C/C++等静态的语言编写。但lua是我们整合各个组件的粘合剂。又通常情况下,组件(或对象)表现为具体在程序开发过程中很少变化的、占用大量CPU时间的决定性的程序,例如窗口部件和数据结构。对那种在产品的生命周期内变化比较多的应用方向使用Lua可以更方便的适应变化。除了作为整合语言外,lua自身也是一个功能强大的语言。lua不仅可以整合组件,还可以编辑组件甚至完全使用Lua创建组件。
除了lua外,还有很多类似的脚本语言,例如:Perl、Tcl、Ruby、Forth、Python。虽然其他语言在某些方面与Lua有着共同的特色,但下面这些特征是lua特有的:
1、可扩展性
lua的扩展性非常卓越,以至于很多人把Lua用作搭建领域语言的工具(注:比如游戏脚本)。Lua被设计为易于扩展的,可以通过Lua代码或者C代码扩展,Lua的很多功能都是通过外部库来扩展的。Lua很容易与C/C++、java、fortran、Smalltalk、Ada,以及其他语言接口。?
2、简单
lua本身简单,小巧;内容少但功能强大,这使得Lua易于学习,很容易实现一些小的应用。它的完全发布版(代码、手册以及某些平台的二进制文件)仅用一张软盘就可以装得下。
3、高效率
lua有很高的执行效率,统计表明Lua是目前平均效率最高的脚本语言。?
4、与平台无关
lua几乎可以运行在所有我们听说过的系统上,如NextStep、OS/2、PlayStation?II?(Sony)、Mac?OS-9、OS?X、BeOS、MS-DOS、IBM?mainframes、EPOC、PalmOS、MCF5206eLITE?Evaluation?Board、RISC?OS,及所有的Windows和Unix。Lua不是通过使用条件编译实现平台无关,而是完全使用ANSI(ISO)C,这意味着只要你有ansi c编译器你就可以编译并使用Lua。
第 0 章 序言
0.1 序言
0.2 Lua的使用者
0.3 Lua的相关资源
0.4 本书的体例
0.5 关于本书
0.6 感谢
第 1 章 起点
1.1 Chunks
1.2 全局变量
1.3 词法约定
1.4 命令行方式
第 2 章 类型和值
2.1 Nil
2.2 Booleans
2.3 Numbers
2.4 Strings
2.5 Functions
2.6 Userdata and Threads
第 3 章 表达式
3.1 算术运算符
3.2 关系运算符
3.3 逻辑运算符
3.4 连接运算符
3.5 优先级
3.6 表的构造
第 4 章 基本语法
4.1 赋值语句
4.2 局部变量与代码块(block)
4.3 控制结构语句
4.4 break和return语句
第 5 章 函数
5.1 多返回值
5.2 可变参数
5.3 命名参数
第 6 章 再论函数
6.1 闭包
6.2 非全局函数
6.3 正确的尾调用(Proper Tail Calls)
第 7 章 迭代器与泛型for
7.1 迭代器与闭包
7.2 范性for的语义
7.3 无状态的迭代器
7.4 多状态的迭代器
7.5 真正的迭代器
第 8 章 编译·运行·错误信息
8.1 require函数
8.2 C Packages
8.3 错误
8.4 异常和错误处理
8.5 错误信息和回跟踪(Tracebacks)
第 9 章 协同程序
9.1 协同的基础
9.2 管道和过滤器
9.3 用作迭代器的协同
9.4 非抢占式多线程
第 10 章 完整示例
10.1 Lua作为数据描述语言使用
10.2 马尔可夫链算法
第二篇 tables与objects
第 11 章 数据结构
11.1 数组
11.2 矩阵和多维数组
11.3 链表
11.4 队列和双端队列
11.5 集合和包
11.6 字符串缓冲
第 12 章 数据文件与持久化
12.1 序列化
第 13 章 Metatables and Metamethods
13.1 算术运算的Metamethods
13.2 关系运算的Metamethods
13.3 库定义的Metamethods
13.4 表相关的Metamethods
第 14 章 环境
14.1 使用动态名字访问全局变量
14.2 声明全局变量
14.3 非全局的环境
第 15 章 Packages
15.1 基本方法
15.2 私有成员(Privacy)
15.3 包与文件
15.4 使用全局表
15.5 其他一些技巧(Other Facilities)
第 16 章 面向对象程序设计
16.1 类
16.2 继承
16.3 多重继承 122
16.4 私有性(privacy)
16.5 Single-Method的对象实现方法
第 17 章 Weak表
17.1 记忆函数
17.2 关联对象属性
17.3 重述带有默认值的表
第三篇 标准库
第 18 章 数学库
第 19 章 Table库
19.1 数组大小
19.2 插入/删除
19.3 排序
第 20 章 String库
20.1 模式匹配函数
20.2 模式
20.3 捕获(Captures)
20.4 转换的技巧(Tricks of the Trade)
第 21 章 IO库
21.1 简单I/O模式
21.2 完全I/O 模式
第 22 章 操作系统库
22.1 Date和Time
22.2 其它的系统调用
第 23 章 Debug库
23.1 自省(Introspective)
23.2 Hooks
23.3 Profiles
第四篇 C API
第 24 章 C API纵览
24.1 第一个示例程序
24.2 堆栈
24.3 C API的错误处理
第 25 章 扩展你的程序
25.1 表操作
25.2 调用Lua函数
25.3 通用的函数调用
第 26 章 调用C函数
26.1 C 函数
26.2 C 函数库
第 27 章 撰写C函数的技巧
27.1 数组操作
27.2 字符串处理
27.3 在C函数中保存状态
第 28 章 User-Defined Types in C
28.1 Userdata
28.2 Metatables
28.3 访问面向对象的数据
28.4 访问数组
28.5 Light Userdata
第 29 章 资源管理
29.1 目录迭代器
29.2 XML解析
同类热门
类似软件
热门标签
网友评论0人参与,0条评论
最新排行
中医基础理论第十版pdf5.22M电子书高清文字版 中医基础理论是对人体生命活动和疾病变化规律的理论概括,也是专门用来研究医学的电子课本,为从事医学行业或医学专业的读者朋友们提供了专业、权威的中医知识内容,并涵盖了多种医学病理,其中包括中医学的哲学基础、藏象、精气血津液神、经络、病因、病机、防治原则
查看adobe illustrator cc经典教程155.1Mpdf高清扫描版adobe illustrator cc经典教程是Adobe Illustrator CC矢量图绘制软件的使用教程,由软件官方Adobe公司内部人员编著。本书内容丰富,语言通俗易懂并且书中配有大量的图示和实践项目,让读者通过实践来学习如何设计徽标、插图、
查看421页pdf百度云资源5.32M想要了解明星的更多八卦猛料吗?想知道自己喜欢的明星过去发生过什么事吗?想知道的话,就来下载本站的421页pdf文件,该文件已经上传到百度云资源,它详细记录了大量明星的私下猛料,作者是一位追星多年并且搜集明星新闻和小道消息的一名女孩,经过多年的追星一点一滴
查看ASP.NET MVC2开发实战28.67M黄保翕pdf扫描版ASP.NET MVC2开发实战是一本ASP.NET MVC2技术的开发设计指导书籍,由黄保翕编著。全书将内容分为基础观念篇、技术讲解篇和开发实战篇,其中基础观念篇主要介绍了MVC架构的基础知识;技术讲解篇对ASP.NET MVC 2的各项开发技术进行解
查看21天学通java第7版19.07M罗格斯·卡登海德 pdf扫描版21天学通java第7版是一本Java语言程序设计畅销入门教程,由罗格斯·卡登海德编著。本书内容丰富翔实,只需21天的时间,便可让读者具备使用Java开发两种程序的知识和技能:运行在计算机中的应用程序以及运行在Android手机和平板电脑中的应用。全书针
查看Android底层开发实战28.68M周庆国pdf扫描版android底层开发实战是一本安卓底层开发实战手册,也是掌握Android底层软件开发必备的工具书,由周庆国、郑灵翔、康筱彬和刘同山共同编著。本书对Android底层源码进行了系统的剖析,不仅覆盖了必要的嵌入式系统理论和Linux的基础知识,还对And
查看c#深入详解百问百答百例106.77M王寅永pdf扫描版c#深入详解百问百答百例是C#初学者的入门指导书,由王寅永、李降宇和李广歌三人共同编著,本书内容丰富,结构清晰,全书结合了作者多年的开发和教学经验,从最基本的理论概念到实践样例,从最简单的C#编程知识到最复杂的技术领域,都对C#编程语言进行了介绍和分析,
查看零基础学C语言(第2版)104.05M康莉pdf扫描版零基础学C语言(第2版)是一本c语言的基础入门图书,由程序员康莉、李宽,陈国建编著。本书由浅入深,循序渐进,全书分为编程基础、编程进阶、编程应用、项目实战、上机练习、面试指南六个阶段进行讲解,同时书中还拥有大量的实例、练习题和面试题,能够全方位的帮助你学
查看鬼灭之刃漫画全集免费阅读版2.28Gv1.0相信很多喜欢看漫画的漫迷肯定知道最近有一款特别火爆的漫画很受大家喜爱,那就是鬼灭之刃漫画,不过需要付费充值才能观看。因此小编为大家带来了鬼灭之刃漫画全集免费阅读版,它是属于pdf版格式的,用户下载即可浏览阅读相关漫画剧情,这本漫画在b站上可谓是有着非常爆
查看疯狂ajax讲义第三版387.48M李刚pdf扫描版 疯狂ajax讲义第三版是一本介绍Ajax前端开发的图书,也是企业应用前端开发实战指南,由疯狂Java实训营创始人李刚编著。全书名称叫做:疯狂ajax讲义:jQuery/Ext JS/Prototype/DWR企业应用前端开发实战第3版。该书全面、细
查看中国起名实用大全书籍电子版19.09M巨天中编著中国起名实用大全是一本关于如何起名,改名的实用图书,作者巨天中,长征出版社发行。全书共三编,内容包括古人改名趣事、依据什么理论来取名改名、取名改名的策略、26种取名改名艺术方法、取名改名禁忌、企业名称设计策略等内容,可以帮助用户更好的起名以及改名,欢迎免
查看