为什么所有用户定义的标识符都以大写字母开头?

时间:2015-03-11 20:42:52

标签: coding-style ada

在我知道的所有Ada源代码中,包括标准库(抱歉,我不知道在网上找到它的地方)或Small game implementation,所有非保留字都以大写字母开头。 (最后,堆栈,索引,......)
并且因为所有保留的关键字都被编辑器突出显示,我猜/希望它不是用于区分用户定义的标识符。

在Python,C ++或Java中,大写通常用于某些事物(通常是类标识符和常量),以允许它们被人类读者快速识别。 (案例提供有关意义的信息)

为什么"官方" Ada代码的做法有何不同?为什么不在类型,模块之类的东西中使用大写字母?

是否因为信件案件的信息被视为坏事? 如果是这样,为什么?

3 个答案:

答案 0 :(得分:7)

标准库位于ARM的附录A中,位于AdaIC.org

Ada不区分大小写,因此在区分大小写的语言中使用大写是不可能的。

选择使用初始上限以及用于分隔标识符部分(Some_Useful_Name)的下划线,因为它增强了可读性。 Ada有一个明确的设计目标,即强调易于阅读而不是易于写作。

答案 1 :(得分:2)

几乎所有事情都已被告知,但我只想给你两个链接:

  1. 即使没有强制要求,Ada Quality and Style Guide也可以为您提供有关通常的Ada编码风格的解释
  2. 如果您正在使用Gnat,您还可以检查选项以检查编码样式(请参阅gcc options
  3. 但编码风格只是惯例,即使对于Java,Sun约定也不同于Google或Eclipse。 由您(或您的公司)决定什么是最适合您的。

答案 2 :(得分:1)

另一个难题:

在Ada的设计中,一直强调实现的可替代性。数组可以用函数,带有标记记录的普通记录等代替。

如果对象和子程序的命名约定太不相同,那就不会那么好了。如果一个名为非标记的类型与标记类型不同。 (由于某种原因,Object.Primitive_Operation表示法不包括非标记类型。)