Lua est un petit langage de script. Il s'agit d'une équipe de recherche de l'Université pontificale catholique de Rio de Janeiro au Brésil, composée de Roberto Ierusalimschy, Waldemar Celes et Luiz Henrique de Figueiredo et développée en 1993. Il est conçu pour être intégré aux applications afin de leur fournir des extensions flexibles et des capacités de personnalisation. Lua est écrit en C standard et peut être compilé et exécuté sur presque tous les systèmes d'exploitation et plates-formes. Lua ne fournit pas de bibliothèque puissante, qui est déterminée par son positionnement. Par conséquent, Lua ne convient pas comme langage pour développer des applications autonomes. Lua a un projet JIT simultané qui fournit des capacités de compilation juste à temps sur des plates-formes spécifiques.
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语言。
Dernier chapitre
- 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
Cours connexes
- Le dernier didacticiel vidéo ThinkPHP 5.1 en première mondiale (60 jours pour devenir un expert PHP en ligne) 2022-02-17
- Parlons brièvement de la création d'une entreprise en PHP 2023-01-04
- Développement pratique à grande échelle par Tianlongbabu du cadre MVC version Mini imitant le site Web de l'encyclopédie des choses embarrassantes 2018-01-25
- Vérification de connexion et forum de discussion classique 2018-03-02
- Premiers pas avec le développement pratique PHP : création rapide de PHP [Small Business Forum] 2022-06-28
- Démarrage rapide de la version complète de Node.JS 2022-09-30
- Écrivez votre propre framework PHP MVC (40 chapitres en profondeur/gros détails/à lire absolument pour que les débutants progressent) 2022-12-08
- Tutoriel vidéo sur le ressort du cheval soldat 2022-04-12