我正在开发一个 SDK,允许用户使用它并用 C# 或 Java 编写代码。
为了以最佳方式实现这一点,我是否必须用两种语言编写 SDK?尽管使用 2 种不同的语言,这将是很多代码重复,并且维护开销会非常高。
有没有有效的方法来解决这个问题?如果有一天我们考虑为 SDK 添加第 3 种编程语言支持会发生什么?
请注意,我不介意使用 API 代替 SDK。这个想法很简单——它基本上是一个接口或工具包,可以让用户对其进行简单调用以执行某些复杂的操作,所有复杂性都被抽象到 API 或 SDK 中。
我正在开发一个 SDK,允许用户使用它并用 C# 或 Java 编写代码。
为了以最佳方式实现这一点,我是否必须用两种语言编写 SDK?尽管使用 2 种不同的语言,这将是很多代码重复,并且维护开销会非常高。
有没有有效的方法来解决这个问题?如果有一天我们考虑为 SDK 添加第 3 种编程语言支持会发生什么?
请注意,我不介意使用 API 代替 SDK。这个想法很简单——它基本上是一个接口或工具包,可以让用户对其进行简单调用以执行某些复杂的操作,所有复杂性都被抽象到 API 或 SDK 中。
您可以使用 C++ 编写 SDK 并创建 java/C# 包装类以允许用户与 SDK 交互
还允许轻松扩展到其他语言,因为大多数语言都允许您使用用 C++ 编写的 dll。
只是一个想法。
如果您有兴趣阅读 DLL 创建、适配器模式、Java 的 JNI,不确定 C# 我没有那么多经验
为避免代码重复,有不同的选择。
这取决于您的项目、实施项目的人员以及您未来的目标,最佳解决方案是什么。