为什么在独立应用程序中需要添加脚本引擎

我想知道在哪些情况下嵌入式脚本语言会帮助我在我的C项目中。

我听说过lua,开发人员将其嵌入其项目以扩展其软件应用程序,但为什么开发人员更喜欢使用一些脚本引擎来扩展其应用程序而不是使用主要语言?

点赞
用户2191924
用户2191924

这主要取决于谁使用你的应用程序以及他们的用途。如果应用程序不需要特定用户的定制,则无需进行脚本编写。新功能可以作为应用程序的一部分正常添加。

然而,就像在游戏引擎中一样,如果用户需要创建/编写应用程序中的自定义行为,则必须有某种方式让他们这样做。你可以尝试让用户以应用程序语言编写他们的脚本,然而,在C和许多其他语言的情况下,这需要重新编译应用程序的代码(更不用说你的用户可能不是程序员,可以从更高级的脚本语言中受益)。

通过添加脚本引擎,您允许用户在不需要理解或重新编译整个代码库的情况下向应用程序添加自己的(有限的)功能。

tl;dr如果您的用户需要经常向应用程序添加自定义行为,则使用脚本引擎是有意义的。

2018-10-26 06:44:24
用户6073983
用户6073983

关于你提出的“场景”问题:将脚本引擎添加到你的独立应用程序(例如 C 或 C++)中是将专业引擎性能与高级用户专业知识相结合的最直接方法。

无论你的独立应用程序领域如何,通过编写脚本,高级用户通常可以通过创建专门的或项目中心化的工作流程最大限度地利用它。

脚本接口提供了一个安全和安全的环境,适用于那些主要技能通常不是处理 C/C++ 的用户。

这导致了你的第二个问题:一个脚本 API(例如使用 Lua 或 Squirrel)在主要语言需要低级编程技能时是完美的。典型地,一个用 C++ 编写的应用程序需要你的高级用户使用 C++ SDK 来编写插件。

相反,如果你的独立应用程序是用 Python 编写的,我认为嵌入 Lua 的好处远非显而易见。

2018-10-26 20:05:22