小白到高手 Lua 超详细教程

举报
陈皮的JavaLib 发表于 2021/06/10 00:55:40 2021/06/10
【摘要】 一:Lua是什么? Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua可以很方便地与其他程序(c++,c#,java等等)进行集成。 Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)...
一:Lua是什么?

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

Lua可以很方便地与其他程序(c++,c#,java等等)进行集成。

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

Lua官网http://www.lua.org/

Lua有以下特性:

  1. 轻量级:用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。
  2. 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。
  3. 支持面向过程(procedure-oriented)编程和函数式编程(functional programming)
  4. 自动内存管理:只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象。
  5. 语言内置模式匹配:闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;
  6. 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。
二:应用场景
  1. 游戏开发
  2. 独立应用脚本
  3. Web应用脚本
  4. 扩展和数据库插件,如 MySQL Proxy 和 MySQL WorkBench
  5. 安全系统,如入侵检测系统
三:Lua和C#的区别

Lua可以在几乎所有从操作系统和平台进行编译运行,可以很方便的更新代码。而且更新代码后,可以直接在手机上运行,不需要重新安装(后续的热更新方案)。

C#只能在特定的操作系统中进行编译成dll文件,然后打包成安装包在其他平台(Android,IOS等)运行。在移动平台上不能更新替换已有的dll文件,除非重新下载安装包。

四:Lua环境安装

4.1:Linux 系统上安装
下载源码包并在终端解压编译即可,本文使用了5.3.0版本进行安装:

tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make linux test
make install

  
 
  • 1
  • 2
  • 3
  • 4

4.2:Mac 系统上安装
下载源码包并在终端解压编译即可,本文使用了5.3.0版本进行安装:

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make macosx test
make install

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

4.3:Windows 系统上安装
window下你可以使用一个叫"SciTE"的IDE环境来执行lua程序,下载exe文件双击安装后即可在该环境下编写 Lua 程序并运行。下载地址为:

你也可以使用 Lua 官方推荐的方法使用 LuaDist:http://luadist.org/

五:基本语法

基本语法可以参考菜鸟教程:https://www.runoob.com/lua/lua-data-types.html

文章来源: javalib.blog.csdn.net,作者:陈皮的JavaLib,版权归原作者所有,如需转载,请联系作者。

原文链接:javalib.blog.csdn.net/article/details/106343914

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。