什么是嵌入式脚本语言?与领域特定语言相比,它有哪些优势?
“已经设计了许多语言,目的是通过嵌入应用程序来替换特定于应用程序的脚本语言。” -脚本语言(维基)
Javascript.NET就是这样一个例子。例如,它可以用来代替c#。但是,脚本语言和嵌入式脚本语言之间的区别是什么?此外,为什么 javascript 比 C# 或任何其他特定领域的语言更受欢迎?
什么是嵌入式脚本语言?与领域特定语言相比,它有哪些优势?
“已经设计了许多语言,目的是通过嵌入应用程序来替换特定于应用程序的脚本语言。” -脚本语言(维基)
Javascript.NET就是这样一个例子。例如,它可以用来代替c#。但是,脚本语言和嵌入式脚本语言之间的区别是什么?此外,为什么 javascript 比 C# 或任何其他特定领域的语言更受欢迎?
嵌入式脚本语言将是可以嵌入到应用程序中的脚本语言(或更具体地说,是这种语言的解释器)。因此,解释器有一个 API,可用于将其集成到应用程序中,允许脚本控制应用程序的全部或部分。
优点是应用程序开发人员只需提供与语言的接口;他们不必实现实际的语言。这允许使用更复杂和功能更丰富的语言,因为没有开发时间(从应用程序开发人员的角度来看)。
对于用户来说,这意味着他们知道脚本语言的优缺点、怪癖和好处,前提是我们谈论的是一种常用的语言。
对于您的核心业务,您可能不应该使用嵌入式语言,但使用嵌入式语言还有其他好处。最重要的是,根据我的经验,拥有一种易于使用的语言是有益的,其他用户可以在该语言上针对您的系统进行构建。虽然理论上可以通过正确定义接口来针对您的系统进行构建,但让没有经验的人使用 JavaScript 和 Lua 会更加用户友好,而不必设置整个环境以在 .NET 中进行部署。
当然,热插拔嵌入式语言很容易,并且可以大大加快您的测试速度;也可以在不重新加载应用程序的情况下立即看到您的更改,因为您只需为该嵌入式语言重新加载一个小型虚拟机。
我个人使用它来允许人们针对游戏编写辅助脚本。