Lua 篇(一)— 安装运行Hello World

目录

  • 前言
  • [一、Lua 是什么?](#一、Lua 是什么?)
  • 二、Lua和C#的区别
  • [三、安装 Lua](#三、安装 Lua)
    • [Linux 系统上安装](#Linux 系统上安装)
    • [Mac OS X 系统上安装](#Mac OS X 系统上安装)
    • [Window 系统上安装](#Window 系统上安装)
    • [emmylua+Rider 安装(推荐)](#emmylua+Rider 安装(推荐))
  • 四、Lua学习资料

前言

Lua 是一种轻量级的嵌入式脚本语言,它可以与 C 语言无缝集成,提供了强大的编程能力和灵活的语法。Lua 在很多领域都有广泛的应用,比如游戏开发,网络编程,数据分析等。本文就介绍了 Lua 的安装和运行


一、Lua 是什么?

Lua 是一种由巴西里约热内卢天主教大学的 Roberto Ierusalimschy,Waldemar Celes 和 Luiz Henrique de Figueiredo 开发的开源语言,它建立在 C 语言之上,可以作为一个独立的语言,也可以作为一个嵌入式的库,与其他语言交互。Lua 的名字来自于葡萄牙语的"月亮"。

Lua 的设计目标是简单,小巧,高效,可移植,易扩展。Lua 的语法借鉴了很多其他语言,比如 Pascal,Perl,Python 等,但也有自己的特色,比如使用表(table)作为唯一的数据结构,支持多重赋值,使用冒号(:)作为方法调用的语法糖,支持协程(coroutine)等。

Lua 的应用领域非常广泛,它可以用来开发桌面应用,移动应用,嵌入式系统,网络服务器,数据库,游戏等。Lua 在游戏开发中尤为突出,很多知名的游戏都使用了 Lua 作为脚本语言,比如 World of Warcraft,Angry Birds,Garry's Mod 等。

二、Lua和C#的区别

Lua可以在几乎所有的操作系统和平台进行编译运行

可以很方便的更新代码

更新了代码后,可以直接在手机上运行,不需要重新安装(后续的热更新方案)

C#只能在特定的操作系统中进行编译成dll文件,然后打包进安装包在其他平台(Android、iOS)运行

在移动平台上不能更新替换已有的dll文件,除非重新下载安装包

三、安装 Lua

Linux 系统上安装

Linux & Mac上安装 Lua 安装非常简单,只需要下载源码包并在终端解压编译即可,本文使用了5.3.0版本进行安装:

bash 复制代码
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 linux test
make install

Mac OS X 系统上安装

bash 复制代码
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

接下来我们创建一个 HelloWorld.lua 文件,代码如下:

bash 复制代码
print("Hello World!")

执行以下命令:

bash 复制代码
$ lua HelloWorld.lua

输出结果为:

bash 复制代码
Hello World!

Window 系统上安装

window 下你可以使用一个叫 "SciTE" 的 IDE环 境来执行 lua 程序,下载地址为:

Github 下载地址:https://github.com/rjpcomputing/luaforwindows/releases

双击安装后即可在该环境下编写 Lua 程序并运行。

emmylua+Rider 安装(推荐)

下载安装并激活好rider(本次版本基于:JetBrains Rider 2022.3.3)

从插件商店中安装emmylua

在unity中设置好,使用rider打开项目即可

rider中添加关键字符适配

rider->设置->编辑器->文件类型->找到Lua language file

添加 .lua.txt .lua 识别文件后缀

新建调试配置Lua Debugger

Connection选项选择Tcp (Debugger connect IDE)。别选错了,这步很重要!

四、Lua学习资料

1、《Programming in Lua》第四版

2、http://www.runoob.com/lua/lua-tutorial.html

3、Lua官网:www.lua.org

相关推荐
ULTRA??2 分钟前
C加加中的结构化绑定(解包,折叠展开)
开发语言·c++
远望清一色19 分钟前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
confiself28 分钟前
大模型系列——LLAMA-O1 复刻代码解读
java·开发语言
XiaoLeisj40 分钟前
【JavaEE初阶 — 多线程】Thread类的方法&线程生命周期
java·开发语言·java-ee
杜杜的man43 分钟前
【go从零单排】go中的结构体struct和method
开发语言·后端·golang
幼儿园老大*44 分钟前
走进 Go 语言基础语法
开发语言·后端·学习·golang·go
半桶水专家1 小时前
go语言中package详解
开发语言·golang·xcode
llllinuuu1 小时前
Go语言结构体、方法与接口
开发语言·后端·golang
cookies_s_s1 小时前
Golang--协程和管道
开发语言·后端·golang
王大锤43911 小时前
golang通用后台管理系统07(后台与若依前端对接)
开发语言·前端·golang