最近发布了几个工具,如pyjamas和Scheme2js,它们允许使用Python或Scheme等语言编写代码,并将其编译为Javascript。
但是这样的工具有多实用呢?
我可以看到调试是相当痛苦的,因为你必须调试编译后的javascript代码本身,并将代码中的任何bug与原始python/scheme/etc源代码中的相应行关联起来。即使使用智能堆栈跟踪,例如-d选项提供的睡衣,这看起来仍然很乏味。
此外,像jQuery这样的库使得编写Javascript变得更加有趣和高效。但对于许多开发人员来说,Javascript仍然是一门需要学习的新语言。
有没有人在生产环境中使用过编译过的Javascript?对于编译为Javascript而不是直接用Javascript编写代码的实用性,有什么建议或评论吗?
发布于 2009-10-22 23:30:42
我相信基于Java的GWT可能是这类产品中最流行的,尽管我不会将其描述为“将Java编译成JS”,而是“生成JS代码”。虽然我个人同意您的一些疑问,并且更倾向于直接编写JS,但我必须承认它确实是一个非常实用且流行的工具,完全为生产做好了准备:我观察到,在内部,许多web应用程序足够丰富和复杂,足以保证前端/后端分离,但越来越多地最终成为Python后端和Java前端--后者专门允许GWT (当然也有大量的Python前端和大量的Python后端,但我认为这是一种趋势)。
Google Wave使用GWT,可能是迄今为止谈论最多的web应用程序;再加上大量使用GWT的web应用程序列出的here,我认为它毫无疑问地确立了这种方法是实用的(以及流行的;-)。它是否是最优的(与编写支持良好框架的实际javascript相比)是一个很难回答的问题。
发布于 2009-10-22 23:26:37
GWT是使用较多的JavaScript编译器之一。这将把Java编译成JavaScript,并且肯定会在生产中使用。Google Wave的web界面就是在这个系统中编写的。
另外,为了方便他们编写FireFox扩展,Skydeck编写了Ocamljs。这也运行得很好。
总而言之,如果你能写出一个好的编译器,就没有什么可以阻止你去写一个好的JavaScript编译器。
发布于 2009-10-22 23:29:26
Google Web Toolkit可以做到这一点(Java to Javascript编译),而且GWT被谷歌和其他许多公司广泛使用,因此它绝对是实用的。
因为代码是自动生成的,所以debug problems in Java假设问题出在代码中,而不是编译器代码中,在99%的情况下都是正确的。
https://stackoverflow.com/questions/1607947
复制相似问题