使用CamelCase命名Ruby常量是不是很糟糕?

使用CamelCase命名Ruby常量是不是很糟糕?,ruby,coding-style,Ruby,Coding Style,大多数Ruby常量都遵循C约定,即使用所有大写字母 但使用CamelCase命名Ruby常量被认为是合法的风格吗?我只是觉得这样打字比较容易,因为我的大写字母锁被重新映射为CTRL。好吧,你应该向你的团队成员征求意见,并得到一个共同的决定,因为你不希望在同一个项目中有两个约定 在我看来,遵循每种语言的适当惯例总是一个好主意。我遵循我不太喜欢的惯例。一些IDE也可以对常量进行不同的解释。根据ruby规范,模块是常量。它背后有一种哲学,没有理由写得不同。如果模块是以驼峰形式编写的,那么为什么不为其余

大多数Ruby常量都遵循C约定,即使用所有大写字母


但使用CamelCase命名Ruby常量被认为是合法的风格吗?我只是觉得这样打字比较容易,因为我的大写字母锁被重新映射为CTRL。

好吧,你应该向你的团队成员征求意见,并得到一个共同的决定,因为你不希望在同一个项目中有两个约定


在我看来,遵循每种语言的适当惯例总是一个好主意。我遵循我不太喜欢的惯例。一些IDE也可以对常量进行不同的解释。

根据ruby规范,模块是常量。它背后有一种哲学,没有理由写得不同。如果模块是以驼峰形式编写的,那么为什么不为其余常量编写呢?虽然用大写字母书写似乎占大多数,但我确实用驼色字母书写。此外,用upcase编写让我想起了Basic、Fortran等经典语言,看起来并不复杂

ecologic指出了与IDE的兼容性,但如果这导致了问题,那就是IDE的缺陷。IDE应该尽可能严格地遵循语言规范,而不是人们遵循的惯例。

不,使用CamelCase命名“其他”(非类、非模块)常量被认为是不合法的风格

标准的Ruby实践是类和模块都是CamelCase;其他常数是尖叫蛇案例

Ruby将允许您对其他(非类、非模块)常量使用CamelCase,但您会让所有阅读您的代码的人感到惊讶。代码的目的不仅仅是与机器通信,而是与任何必须理解代码的人通信。因此,在这种情况下,您应该遵守广泛接受的标准

证据 我在第一页上找到的所有样式指南都对这一问题有自己的见解,它们支持我的观点,即在Ruby中命名非类、非模块常量时,尖叫蛇格是绝大多数的标准。几句话:

  • :
对于其他常量,请使用“尖叫蛇”案例

对于其他常量,请使用“尖叫蛇”案例

常量应使用所有大写字符和下划线命名,例如

BigFatObject::MAX_SIZE
对于其他常量,请使用“尖叫蛇”案例


对于外部的人来说,一般的可读性会变得更差,那么如果你决定为任何开源项目做出贡献,你将不得不努力回到常规惯例。“用upcase编写让我想起了经典语言,如Basic、Fortran等。”-LOLCODE可以混淆所有的CAP!!1.对于Ruby新手来说,类是模块的子类,它们也使用CamelCase。这个问题是一个意见问题,就像在公共场合穿衣服是一个意见问题一样。在这两种情况下,你都可以打破惯例,但你不会有太多的同伴,你会让人们大吃一惊。@WayneConrad,除非你因为不使用一致的外壳而被逮捕的可能性小于因为不在公共场合穿衣服而被逮捕的可能性。