gpt4 book ai didi

interop - 多编程语言项目的命名约定

转载 作者:行者123 更新时间:2023-12-04 11:57:43 27 4
gpt4 key购买 nike

我目前正在从事一个项目,该项目包含几种不同的“编程”语言,每种语言都有自己的命名约定。应该始终使用相同的命名约定,还是应该在每种语言中使用不同的名称以具有原生外观(即不与框架的其余部分冲突)?

例如,该项目使用 MongoDB(BSON)、C#、JSON 和 Javascript。现在我用该层的约定命名每一层中的东西,然后在每一层之间有代码进行转换,比如从 BSON 到 C# 模型。另一方面,如果命名约定相同,MongoDb 会自动执行此操作。

最佳答案

二十多年前,当我刚刚开始我的职业生涯时,我可能会同意 Paul 的观点并说“采用通用命名约定!”。 :)

今天我的答案是不同的。即使您正在处理一种编程语言,提出一个体面的命名约定也是一项具有挑战性的任务。为多种语言/框架制定通用约定是一个崇高的目标和优秀的脑筋急转弯,但总的来说,我认为这是不可行的。不同语言/框架的句法和词汇规则千差万别,无法做到“一刀切”。此外,所使用的语言/框架集可以随时更改,而适当调整您的“通用约定”可能会变得非常昂贵或非常不合时宜。

所以我建议主要关注每种语言/框架(或每组足够相似的语言/框架——例如 C 和 C++)的可靠和体面的约定。这种方法的一个很好的结果是,只涉及一种语言的项目必须遵守一组看起来并不“外来”的约定。

说了这么多,我相信一些约定对于所有涉及的语言/框架都是通用的,而不会变得太“外来”。此外,词汇之类的东西应该在整个项目中通用。当然,这主要是关于语义和词汇规则;但即使是一些句法规则也可以是通用的。例如:

  • 实体名称的词汇规则(例如“总是使用单数名词”)。
  • 首字母缩略词的词汇规则(例如“仅使用广为人知的首字母缩略词”)。
  • 复合名称的句法规则(例如“始终使用通用然后特定的顺序”)。

  • 当然,上面的例子过于简单了。但我希望这个想法很清楚:任何可以通用的约定都应该是通用的,但它始终只是您需要的所有约定的一部分。

    关于interop - 多编程语言项目的命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8944851/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com