首页 > 解决方案 > 以多种语言维护对象模型

问题描述

我正在为 API(REST 以及面向消息队列的响应)的 Java 和 Python(以及未来可能的其他语言)消费者编写一个基本的 SDK。

与其维护单独的每种语言的描述,我想知道是否有一种方法可以在 YAML 之类的东西中定义类和枚举,它们可以自动转换为每种语言的适当对象。

我想我可以用 C 编写对象,然后进行每种语言的绑定——但这作为一种解决方案似乎有点笨拙。

标签: javapythonclassyaml

解决方案


您可以使用 JSON 来表示您的对象模型并将其转换为您使用的每种语言的对象。

这里有一些相关的文章可以帮助您入门。如何将 Java 对象转换为 JSON(杰克逊) https://www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/

https://realpython.com/python-json/#encoding-and-decoding-custom-python-objects 在 Python 中使用 JSON 数据

另一个选项是 Protocol Buffers,尽管在使用 REST api 时它不像 JSON 那样受欢迎。


推荐阅读