Lua是一個小巧的腳本語言。是巴西里約熱內盧天主教大學(Pontifical Catholic University of Rio de Janeiro)裡的研究小組,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo所組成並於1993年開發。其設計目的是為了嵌入應用程式中,從而為應用程式提供靈活的擴展和自訂功能。 Lua由標準C編寫而成,幾乎在所有作業系統和平台上都可以編譯,運行。 Lua並沒有提供強大的函式庫,這是由它的定位決定的。所以Lua不適合作為開發獨立應用程式的語言。 Lua 有一個同時進行的JIT項目,提供在特定平台上的即時編譯功能。
Lua脚本可以很容易的被C/C++ 代码调用,也可以反过来调用C/C++的函数,这使得Lua在应用程序中可以被广泛应用。不仅仅作为扩展脚本,也可以作为普通的配置文件,代替XML,ini等文件格式,并且更容易理解和维护。
下面让我们感受下第一个Lua程序!
第一个Lua程序
Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。 一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。
提示:我们的Lua教程将帮助您学习从初级到高级的Lua知识。如果你有任何疑问,请前往PHP中文网Lua社区提出你的问题,会有热心网友为你解答。
Lua特性
轻量级
Lua语言的官方版本只包括一个精简的核心和最基本的库。这使得Lua体积小、启动速度快,从而适合嵌入在别的程序里。5.0.2版的Lua的内核小于120KB,而Python的内核大约860KB,Perl的内核大约1.1MB。
可扩展
Lua并不象其它许多"大而全"的语言那样,包括很多功能,比如网络通讯、图形界面等。但是Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。
其它特性
Lua还具有其它一些特性:同时支持面向过程(procedure-oriented)编程和函数式编程(functional programming);自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程 [4] ,并非操作系统所支持的线程)支持;通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。
Lua目标
Lua的目标是成为一个很容易嵌入其它语言中使用的语言。大多数程序员也认为它的确做到了这一点。
很多应用程序、游戏使用LUA作为自己的嵌入式脚本语言,以此来实现可配置性、可扩展性。这其中包括魔兽世界、博德之门、愤怒的小鸟、QQ三国、VOCALOID3、Garry's Mod、太阳神三国杀、游戏王ygocore和饥荒等。
Lua应用场景
游戏开发
独立应用脚本
Web 应用脚本
扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench
安全系统,如入侵检测系统
本Lua教程手册涵盖的内容
本Lua教程涵盖所有Lua基础和高级知识,包含了Lua基本语法、Lua流程控制、Lua函数、Lua运算符、Lua字符串、Lua数组、Lua迭代器、Lua错误处理、Lua面向对象等等Lua初高级知识。
提示:本教程的每一章都包含了很多Lua实例,您可以直接点击 "运行实例" 按钮在线查看结果。这些例子将帮助您更好地理解和使用Lua语言。
最新章節
- Lua 数据库访问 2016-10-20
- Lua 面向对象 2016-10-18
- Lua 垃圾回收 2016-10-18
- Lua 调试(Debug) 2016-10-18
- Lua 错误处理 2016-10-18
- Lua 文件 I/O 2016-10-18
- Lua 协同程序(coroutine) 2016-10-18
- Lua 元表(Metatable) 2016-10-18
相關課程
- 最新ThinkPHP 5.1全球首發影片教學(60天成就PHP大牛線上訓練課程) 2022-02-17
- 簡單聊聊PHP創業那點事 2023-01-04
- 大型實戰天龍八部之開發Mini版MVC架構仿糗事百科網站 2018-01-25
- 登入驗證與經典留言板 2018-03-02
- PHP實戰開發極速入門: PHP快速創建[小型商業論壇] 2022-06-28
- 快速入門Node.JS全套完整版 2022-09-30
- 自己動手寫 PHP MVC 框架(40節精講/鉅細/新人進階必看) 2022-12-08
- 馬士兵spring影片教學 2022-04-12