3

我将在我的新项目上工作,客户要求尽可能使用“Lua”,我以前从未使用过它,通过搜索我发现它与 javascript 相比速度很快,并且现在越来越流行。

由于我很困惑,我以前从未使用过它,所以我想知道一些事情

  • 它真的比javascript更好吗(在性能和使用方面)?
  • 我会得到足够的资源吗(因为我不想在开始开发后由于缺乏资源或开发变得困难)?
  • 它需要除 C 编译器之外的任何东西来运行吗?

请大家在开始之前了解这些事情真的很重要。任何帮助将不胜感激。

4

1 回答 1

7

我假设您正在用 C 或 C++ 编写一个独立的应用程序,并且您正在寻找一种语言来使人们能够通过嵌入另一种语言来扩展该应用程序。这几乎是 Lua 的领域。

Lua 的优势在于它很容易嵌入到您的 (C) 应用程序中。它编译速度快,体积小,许可自由,使用 Lua 中的 C 函数相对容易。标准 Lua 对大多数使用这种语言的事情都有足够的性能;如果你需要更多的原始速度,你可以查看LuaJIT,Lua 的 JIT 编译器。

至于你的问题:

  • LuaJIT 可能会与动态语言一样快。Lua 用于性能非常重要的游戏(模拟城市、孤岛惊魂、魔兽世界)。
  • 如果“资源”是指文档:当然。Lua 是一门非常简单的语言,比 JavaScript 简单得多;该手册应该可以帮助您开始使用该语言本身,该 wiki非常适合提供有关嵌入过程的提示。本文有一个可以复制/粘贴的示例。
  • Lua 几乎可以在 C 程序运行的任何地方运行。它甚至不需要操作系统,如果您正确捆绑它,它在运行时不依赖任何东西。

在您的应用程序中嵌入一个完整的 JavaScript 环境,并将您的应用程序连接到 JS 环境,可能需要做很多工作(尽管 Google 的 V8 引擎有一些功能可以帮助您;请参阅此处)。

于 2013-08-29T09:47:44.823 回答