Lua可以用于应用程序开发吗?

时间:2009-06-27 17:29:26

标签: lua

随着VB6的中级知识,最近人们一直建议“升级”为新语言。我正在考虑Lua - 它简单,快捷。但似乎没有关于创建类似于K3buTorrentCCleanermIRC的应用程序的任何信息。

7 个答案:

答案 0 :(得分:24)

是的,它可以。而且很容易尝试一个小项目。

恕我直言,它非常适合与一个体面的工具包结合使用GUI构建小型应用程序。既然你已经提到过Visual Basic,我会假设你现在专注于Windows。在这种情况下,请查看Lua for Windows包。

Lua for Windows将Lua语言核心与大量有用的扩展模块集成在一起,并使用适当的Windows安装程序对其进行打包。它包含一个版本SCiTE editor,它具有Lua的语法颜色和一个集成的调试器。它还包括wxWidgetsIUP GUI工具包的绑定。

我使用Lua和IUP构建了几个实用程序。总之,可以构建相当复杂的应用程序,而无需使用已编译的代码。

Lua失败的一个领域是开箱即用的唯一应用语言。它仍然需要相当多的Windows应用程序打包经验来生成一个安装程序,它以一种使用Lua作为与它们无关的核心语言的方式提供最终用户所需的一切。

然而,正如许多商业项目所证明的那样,这是一个可以解决的问题。我通常最终编译一个小的EXE文件,该文件可以有自己的默认图标和版本资源,可以加载和初始化Lua核心,并按照Lua脚本继续应用程序的其余部分。结合实现分析所显示的任何功能的DLL或者两个DLL应该在编译环境中完成,你就可以了。

幸运的是,即使你最终提供自己的Lua副本,你会发现整个安装都相当小。此外,核心语言本身并不关注注册表等Windows功能,因此很容易有几个应用程序都使用Lua,即使它们是不同的版本。

Lua已经存在超过10年,并且拥有一个活跃的用户社区。此外,它不是一个难以接受和学习的语言,因此恕我直言,找到可以为项目团队做出贡献的人并没有任何问题。

答案 1 :(得分:8)

Lua非常“轻量级”,它有优点和缺点 - 如果你正在构建一个完整的应用程序,你将自己做大量的基础,而不是专注于应用程序级开发。我建议使用更丰富的动态语言,比如Python(我个人最喜欢的)或Ruby(特别是网络应用程序很受欢迎,但不限于那些) - 这样你就能找到很多工具和基础设施,丰富的标准已经为您构建的库,第三方扩展,各种应用程序的可用框架等。

答案 2 :(得分:5)

Lua是一种很棒的语言 - 我们经常在游戏开发中使用它来编写脚本,因为它轻巧,易于学习且具有良好的C绑定。
但是,如果你从VB6转移,那么我建议学习VB.NET或最好是C#。您将找到更多的开发资源和库支持。

答案 3 :(得分:4)

你会在这里找到一个使用Lua的各种项目的列表,其中一个最相关的可能是Adobe Photoshop Lightroom,其中40%是用Lua编写的:Lua Uses

答案 4 :(得分:3)

Lua 可以用于应用程序开发,但是您必须完成一定数量的基础架构工作:例如,绑定到wx或Qt等工具包。就像我喜欢动态语言一样,我不会在你的情况下推荐它。

如果您来自VB6,我会按顺序推荐C#,VB.NET或Java。每个都比VB6强大得多,但应该足够熟悉,以便您快速提高效率。

答案 5 :(得分:2)

Lua是一门易于学习的语言。但是如果你愿意,可以学习C#或Java并将Lua作为你的应用程序的脚本语言嵌入。

或者只是学习Python。

答案 6 :(得分:-4)

NO。

原因,是可持续性(拼错?)。你会发现很少有开发人员使用这种语言,因此当你的团队继续工作,或者你将用户锁定给你时,你会遇到问题。

即使您确实找到开发人员,恕我直言也会更加昂贵。

恕我直言,选择“更受欢迎”的语言/技术是一个好处:更便宜的开发者。