lua介绍

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


lua特性

  • 轻量级 :由于是c编写,编译后仅仅100K左右,很方便嵌入别的程序中。

  • 可扩展:提供了非常易于使用的扩展接口和机制。

  • 支持面向过程

  • 自动管理内存

  • 语言内置模式匹配、闭包、多线程(协程)

  • 支持面向对象,如数据抽象、虚函数、继承和重载等。


lua 应用场景

  • 嵌入式脚本:如游戏、监控服务,对程序本身的扩展性增强;

  • 独立脚本:独立的脚本语言,完全可以做一些辅助性的开发,如数据分析;

  • 动态配置:应用于应用程序的动态配置部分,客户端和服务端建立连接是,如一些热点数据可以由lua脚本提供;

  • 游戏开发:单纯使用C++开发的成本比较高,而使用 C++ 提供各种基本的功能函数库,可以用lua调用这些库来实现各种逻辑功能,可以实现基本代码库和逻辑代码分离,减低编程成本。

  • Web应用脚本:Lua 的另一个常见应用场景是编写 Nginx 服务器的脚本。一开始开发者都使用 C/C++ 做 Nginx 开发,但是使用 C/C++ 开发 Nginx 的程序对开发者的要求较高,开发者需要了解 Nginx 的工作原理和内部处理流程,熟悉各种数据结构,掌握进程、事件等运行机制,开发成本高,周期长。

    直到 Openresty(一个基于 Nginx 与 Lua 的高性能 Web 平台)的诞生,该平台集成大量的 Nginx 功能模块和 Lua 模块,开发者可以用 Lua 作为 “胶水语言“ 粘合 Nginx 的各个模块和底层接口,以脚本的方式实现业务逻辑。


lua基础语法

单行注释:–

多行注释:–[[ ]]–

关键字:

and、break、do、else、elseif、end、false、for、function、if、in、local、nil、not、or

repeat、return、then、true、until、while、goto