从理论上讲,这对我来说似乎是可能的。如果可能的话,任何人都可以向我确认这一点吗?如果有这样的软件可以做到这一点?(如Java到C++或C#)
一般来说,是否有可能将 Java 等语言转换为 PHP 等服务器端编程语言?
从理论上讲,这对我来说似乎是可能的。如果可能的话,任何人都可以向我确认这一点吗?如果有这样的软件可以做到这一点?(如Java到C++或C#)
一般来说,是否有可能将 Java 等语言转换为 PHP 等服务器端编程语言?
翻译一种语言的句法元素并产生另一种语言并非易事,但也并非不可能。一个好的解析器可以用一种语言构建语法树,然后发出另一种语言。在简单的“Hello World”类型应用程序的上下文之外移植代码的困难是双重的:
这是可能的,但主要问题是 Java 有一个非常大的运行时库,需要在目标语言中提供它才能进行全自动转换。
对于 Java -> .NET 的特殊情况,您可以使用 Microsoft 的 J# 将其编译成可以使用的 .NET 程序集。ikvm.net 还允许在 .NET 中运行 JVM。
对于 PHP,我不相信这样的解决方案存在。您可以使用 gcj 创建一个可以链接的本机库,但我不认为这是一个可行的方案。
您需要 PHP 中的哪些功能?
Visual Studio 附带了一个 Java 到 C# 的翻译器,即使它做得相当不错,但之后仍有很多需要清理的地方。
根据我的经验,你真的必须问自己将代码从一种语言翻译成另一种语言是否有意义。有什么收获?翻译后的代码是否可维护?如果这些问题的答案指向错误的方向,那么翻译可能不是正确的方法。
Google Web Toolkit 会从 Java 转换为 JavaScript:
回答你的问题,是的,理论上这确实是可能的,实际上每天都在使用这种技术:)
在我看来,有趣的是 Java 转换器通常通过获取字节码而不是源代码进行转换。然后是字节码到ObjectiveC 的源代码。对于某些转换器(至少一个开源转换器),它是字节码到 XML,然后是 XML 到目标语言。
例如,iPhone 上的 Uniwar 应用程序受到了所有人的好评,并进入了 appStore 的前十名,它是用 Java (JME) 编写的,并自动从 Java 字节码转换而来。进入前十名,即使是几天,也意味着它部署在很多机器上;)
在 Real-World [TM] 中,Cobol-Java 以及奇怪的是 Java-Cobol 并非闻所未闻。
为了让所有这些工作,你需要一个非常好的转换器:)
理论上是可以的。但正如其他人指出的那样,主要问题是翻译图书馆。
前段时间,我制作了 Java 到 Tcl(XOTcl) 和 Java 到 Python 的翻译器来评估翻译的可能性。通过java2tcl和yava2python搜索。
它们转换语法但不进行相关的结构转换(例如,Java 文件操作到 Python 的)。这将需要更多的开发时间。
总的来说,我认为这样的翻译是可能的。但前提是您的翻译器涵盖了转换项目的类/库。