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!。

推荐阅读:
封装php redis缓存操作类   阅读:8247shell脚本统计当前服务器并发连接数   阅读:6468HTTP 1.1 协议详解   阅读:9216用php从1加到100的值   阅读:7710php压缩页面的html代码一行显示   阅读:6560TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:2681javascript获取两个日期间的所有日期   阅读:5901shell发送邮件脚本   阅读:6589html5 离线缓存的使用   阅读:3953比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:4601网站性能优化-页面静态缓存   阅读:5073知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:5685centos 7 安装 mysql-5.7   阅读:6235最简单的Banner轮播淡入淡出效果代码及实现思路(附带源码)   阅读:12358centos 7搭建zabbix3.4   阅读:5776php冒泡排序法   阅读:13129php 获取当前前后年、月、星期、日、时分秒的时间   阅读:6030Mysql在大型网站的应用架构演变   阅读:4151shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:8081知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:5685一步步带你,如何网站架构   阅读:3712纯干货,程序员面试的超实用技巧   阅读:3854mysql5.7开启sql日志的配置   阅读:8179php swoole搭建简单的聊天室   阅读:2962php 使用 smtp.php 类在线发送邮件功能   阅读:5014centos7.3安装mongodb3.6   阅读:6737centos 7 设置 nginx-1.11.10 开机启动   阅读:7440mysql共享锁和排他锁详解   阅读:6663mysql中文分词全文搜索索引讯搜的安装   阅读:6113phpexcel 超简单从数据库一键导出数据到excel教程   阅读:6715一步步带你,如何网站架构   阅读:3712给网站添加一键qq登录的功能   阅读:6650mysql共享锁和排他锁详解   阅读:6663web性能测试工具ab的测试方法   阅读:4232nginx安装mysql和json模块   阅读:4056centos 7 安装 php-7.1.3   阅读:18413php设置cookie为HttpOnly防止XSS攻击   阅读:11656web项目高并发量网站解决方案   阅读:4145mysql5.7主从同步配置   阅读:4046web性能测试工具ab的测试方法   阅读:4232shell脚本统计当前服务器并发连接数   阅读:6468shell脚本批量删除几天前的文件   阅读:8713mysql共享锁和排他锁详解   阅读:6663centos 7 添加 redis 3.2.9 开机启动脚本   阅读:8681shell脚本统计当前服务器并发连接数   阅读:6468phpexcel 超简单从数据库一键导出数据到excel教程   阅读:6715centos7开启交换内存   阅读:9951centos 7搭建zabbix3.4   阅读:5776mysql 为什么添加索引可以提高访问速度   阅读:5512封装php redis缓存操作类   阅读:8247