统一多种语言的枚举

时间:2010-12-17 17:06:12

标签: enums cross-language language-interoperability

我有一个大型项目,其中包含多种语言的组件,每个组件都依赖于某些相同的枚举值。您提出了哪些解决方案来统一多种语言的枚举?我能想到一些,但我正在寻找最好的解决方案。

(在我的实现中,我使用的是Php,Java,Javascript和SQL。)

3 个答案:

答案 0 :(得分:4)

您可以将所有枚举放在文本文件中,然后使用代码生成器从该公共文件中为每种语言写出适当的语法,以便每个组件都有枚举。使该文本文件成为权威的信息来源。

您可以用XML表示文本文件,但我认为制表符分隔的平面文件可以正常工作。

答案 1 :(得分:3)

以每种语言都能理解或具有库的格式制作它们。我现在正在使用JSON。

然后你可以用两种方式包括它:

  • 用于开发:在运行时从文件/ URL加载它
    • 适合您想要的小改变立即看到
  • 用于高效用途:将其包含在文件中
    • 使用构建脚本
    • 没有即时反馈

答案 2 :(得分:1)

我会应用the dry principle并使用代码生成器,因此您可以轻松添加新语言,即使它本身不存在。