Lua 教程

lua

Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于 1993 年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。


设计目的

其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。


Lua 特性

  • 轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。

  • 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。

  • 其它特性:

    • 支持面向过程(procedure-oriented)编程和函数式编程(functional programming);

    • 自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;

    • 语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;

    • 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。


Lua 应用场景

  • 游戏开发

  • 独立应用脚本

  • Web 应用脚本

  • 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench

  • 安全系统,如入侵检测系统


第一个 Lua 程序

接下来我们使用 Lua 来输出"Hello World!"

print("Hello World!")

运行后,会在屏幕上显示 Hello, world!。

推荐阅读:
mysql的四种索引类型   阅读:23469centos 7搭建zabbix3.4   阅读:7053程序员找工作三要素(必看)   阅读:6041php 生成图片,给图片加水印   阅读:6858centos 7 安装 mysql-5.7   阅读:7677mysql共享锁和排他锁详解   阅读:7904一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:133643crontab+shell脚本实现定时备份mysql数据库   阅读:8176移动端js触摸touch详解(附带案例源码)   阅读:17581分享:淘宝技术这十年   阅读:5064企业让你去面试,可能不是真的招人   阅读:6280centos 7 忘记root密码   阅读:5292纯干货,程序员面试的超实用技巧   阅读:4627linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:18553企业让你去面试,可能不是真的招人   阅读:6280移动端自适应rem原理   阅读:10121给 centos 7 安装桌面环境   阅读:17439mysql数据库性能的基本优化   阅读:4832一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:133643给php7安装redis扩展库   阅读:8760linux时间戳有趣的情人节秒1234567890   阅读:5860php文件下载防盗链   阅读:10412php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:6226shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:9670ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:10206linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:18553纯干货,程序员面试的超实用技巧   阅读:4627一步步带你,如何网站架构   阅读:4583面试都会问你为什么你从上一家公司离职的真实意思   阅读:11731十张GIF让你弄懂递归等概念   阅读:6573php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:6226centos 7 设置 nginx-1.11.10 开机启动   阅读:8440php打印九九乘法表   阅读:11424centos 7 安装 redis 3.2.9   阅读:7037程序员找工作三要素(必看)   阅读:6041session与cookie的区别   阅读:4476php打印九九加法表   阅读:11459最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:32924centos 7 修改系统屏幕分辨率   阅读:47189关于PHP程序员技术职业生涯规划   阅读:3246linux php7编译安装mongodb扩展   阅读:9473php 生成图片,给图片加水印   阅读:6858php+redis实现消息队列   阅读:15790csv文件一键导入数据到mysql数据库   阅读:7201centos 7 忘记root密码   阅读:5292php连接redis   阅读:6058ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:10206php打印九九加法表   阅读:11459centos7.3安装mongodb3.6   阅读:8112linux top命令详解   阅读:10116