10. LuaJIT 介绍

2020-07-27 09:36 更新

一、什么是lua&luaJit

lua(www.lua.org)其实就是为了嵌入其它应用程序而开发的一个脚本语言,luajit(www.luajit.org)是lua的一个Just-In-Time也就是运行时编译器,也可以说是lua的一个高效版。

二、优势

  1. lua是一个免费、小巧、简单、强大、高效、轻量级的嵌入式的脚本语言,lua当前的发行版本5.3.1只有276k
  2. 它是用C语言开发的项目,所以可以在大部分的操作系统上运行
  3. lua是目前速度最快的脚本语言,既可以提升语言的灵活性还可以最大限度的保留速度
  4. 其语法非常简单,没有特例
  5. lua还可以作为C的API来使用

三、不足和不同

  1. lua没有强大的库,所以很多功能实现起来没有python、perl、ruby等脚本语言简洁
  2. lua的异常处理功能饱受争议,虽然其提供了pcall和xpcall的异常处理函数
  3. lua原生语言中没有提供对unicode编码的支持,虽然可以通过一些折中的办法实现
  4. 没有提供在C++中应用很广泛的a?b:c的三元运算符操作
  5. 没有switch...case...语法,只能通过if..elseif..elseif..else..end的方式折中实现
  6. 在循环时没有提供continue语法
  7. 没有C++中应用广泛的a++和a+=1等操作
  8. lua的索引是从1开始的,而不是我们熟悉的0(string,table)
  9. 当你给一个元素赋值为nil时相当于这个元素不存在
  10. lua的数值类型只有number是没有int,float,double等之分的
  11. lua中没有类的概念,其类是通过table的形式来实现的
  12. lua中只有nil和false是表示假的,零在lua中是为真的
  13. 很多程序需要()标示才能运行,比如a={["b"]=5},print(a.b)是可运行的,但是 {["b"]=5}.b就会报错,需要({["b"]=5}).b才可以

四、综述

综上,lua是一个简单,高效所以在游戏逻辑开发和服务器开发中(ngx_lua)得到广泛的应用。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号