首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >面向多种编程语言/平台

面向多种编程语言/平台
EN

Stack Overflow用户
提问于 2010-09-07 23:49:42
回答 3查看 215关注 0票数 3

有没有什么好方法可以用非特定语言的方式定义接口/类层次结构,然后用指定的语言生成相应的源代码?特别是,我需要同时针对Java和C#来创建一个相当全面的应用程序接口。我记得有一次在SF上看到一篇文章,其中的答案提到了一种‘编译’成其他语言的编程语言--但我一直没有找到这篇文章。这种语言可能是我想要做的事情的解决方案。

谢谢,

安迪

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-07 23:50:59

你有没有考虑过UML?很容易从UML中找到许多不同语言的代码生成器(例如:this one可以生成C#、Java和VB.NET代码),但是您可能希望仔细评估它是否适合您。作为一种标准,多年来它已经获得了大量的criticism

票数 4
EN

Stack Overflow用户

发布于 2010-09-08 00:13:18

有很多方法可以做你想做的事情。

例如,您可以考虑使用接口定义语言(IDL)。Corba的IDL允许您以语言中立的方式声明对象和接口。然后,这些idl文件通过IDL编译器运行,该编译器为您选择的语言输出适当的类、头、存根、代理等。

例如,IIOP.NET是用于C#的Corba的实现。我不知道它有多好,但它会有一个可以输出C#类的IDL编译器。作为JDK的一部分,Java有一个名为idlj的IDL编译器。

因此,从理论上讲,您可以使用相同的接口&类来实现C#和Java。

做类似事情的另一种方式是利用UML工具,该工具可以从模型生成源代码。

另一种选择是使用像WSDL / XSD这样的东西来定义接口和类型,并从中生成存根。

票数 4
EN

Stack Overflow用户

发布于 2010-09-08 00:38:38

看看IKVM.NET吧。有了它,您就可以用Java语言(或JVM语言)编写程序并将其转换为.NET程序集。因此,您的程序将同时具有JVM和.NET版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3660264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档