Lua对PHP/Python/JSP的比较

2024-05-19 03:20:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我即将开始我的下一个web开发项目,我想听听Lua在web开发空间中的优点。

Lua与PHP/Python/JSP/etc相比如何。。用于web开发?

为什么Lua对于web应用程序语言来说是个糟糕的选择呢?


Tags: 项目webetc空间优点phplua程序语言
3条回答

简而言之:

  • Lua为您提供了一个更小、更简单的系统,您可以完全理解它,但它处于一个更小的生态系统中;开普勒是您所能得到的一切,您可能需要构建一些自己的东西。我觉得这很简单也很有趣(我大量使用开普勒的一部分Lua bindings to the Expat parserLua Object Model),但其他人可能更喜欢使用其他人正在使用的东西。

  • PHP最初更多的是作为一个宏处理器而不是一种语言,尽管经过多年的改进,当人们说“X确实变得更好了”时,我倾向于提防X。我觉得PHP不太好用,但是web开发有一个巨大的生态系统。

  • Python是一种很好的语言,但它比Lua大得多,而且正在经历一次重大的修改(从2.5到3.x的转换)。你又得到了一个大生态系统;Python的问题是语言和系统太大了,任何人都无法理解所有的内容。如果不需要的话,我不喜欢这样。

  • Ruby是一种更简洁的语言设计,而大型的Rails生态系统则是胜利者。Ruby比Python复杂,但比Lua复杂。Rails有点像野兽。

归根结底就是这个问题:

  • 即使您必须自己构建很多东西,您是否愿意理解系统中的所有软件?

  • 或者你宁愿有很多东西已经为你建造了,即使你最终不明白每件作品是如何工作的?

如果你想了解一切,Lua就是你的游戏。如果您想要很多已经为您构建的东西,我不能建议您如何选择PHP/Python/JSP/Rails等等。

有关Lua和Python的更多信息,请访问Which language is better to use, Lua or Python?

Kepler project可能是Lua中web应用程序开发的最著名的起点。他们有一个mailing list档案馆将对各种方法的优点进行大量讨论。

开普勒网站本身就建立在一个叫做Sputnik的CMS框架中,这个框架几乎完全是用Lua编写的,基于开普勒项目。

Lua的典型方法是使用一种适合与各种系统组件接口的语言来实现这些接口,并使用Lua进行业务逻辑和粘合。开普勒提供了大量用C编写的库,这些库提供了对文件系统、数据库和Lua代码网络的访问。它还提供了一个定义的API层来与web服务器接口,实现了Apache、任何支持CGI的服务器和Xavante,后者是一个主要在Lua中实现的完整web服务器。

使用Lua进行web开发是很少见的……您可以使用它,但是它比使用一种已经成熟为web开发语言(PHP)或具有良好的web相关库(python/ruby/etc)的语言要耗费很多时间,这意味着您可能最终会“重新创建轮子”很多东西可能很容易在成熟的网络语言。

更好的问题是,Lua提供了哪些您需要的东西,而不是您列出的其他语言所提供的?或者你想通过创建一个像Rails为Ruby所做的那样的Lua MVC框架来帮助Lua成为一个更好的web开发平台吗?

相关问题 更多 >

    热门问题