使用多种编程语言开发SDK

时间:2013-05-22 20:27:16

标签: c# java sdk programming-languages

我正在开发一个SDK,允许用户使用它并用C#或Java编写代码。

为了达到最佳效果,我是否必须用两种语言编写SDK?这将是很多代码重复,尽管有两种不同的语言,维护开销会非常高。

有没有有效的方法来解决这个问题?如果有一天我们想到为SDK添加第三种编程语言支持会发生什么?

请注意,我不介意使用API​​而不是SDK。这个想法很简单 - 它基本上是一个接口或工具包,可以让用户对它进行简单的调用来执行某些复杂的操作,所有复杂性都被抽象到API或SDK中。

2 个答案:

答案 0 :(得分:0)

您可以使用C ++编写SDK代码并创建java / C#包装类以允许用户与SDK进行交互

还允许轻松扩展到其他语言,因为大多数语言允许您使用C ++编写的dll。

只是一个想法。

如果您有兴趣阅读DLL创建,适配器模式,JNI for java,不确定C#我没有那么多经验

答案 1 :(得分:0)

为避免代码重复,有不同的选项。

  • 您可以在便携式C ++中创建基本库。然后可以在Java(例如,使用JNI)和C#(例如,使用C ++ / CLI)中连接C ++。这意味着您可以使用C ++为两种目标语言创建包装器。如果您想要定位更多不同的操作系统,则此选项更加困难。
  • 您可以将软件创建为服务(例如SOAP或简单的json服务)。您可以使用您喜欢的语言执行此操作,然后使用Java和C#创建客户端应用程序。

这取决于您的项目,实施该项目的人员以及您未来目标的最佳解决方案。