Php 不同的括号形式背后的原因是什么?

Php 不同的括号形式背后的原因是什么?,php,coding-style,Php,Coding Style,我正在通读,其中他们指出类定义后的花括号应该在下一行,“一个真正的大括号形式” 我通常将大括号放在同一行: class OtherClass { function ... } 把支架放在下一行的原因是什么?或者使用任何其他样式,就这点而言?用户偏好。这真的没什么区别。当我使用PHP开发时,我使用了第二个选项,但现在使用C#,我使用了第一个选项。个人偏好确实是唯一真正的“原因”。我发现您提到的第一个样式有助于从其成员定义中直观地抵消类名。这有助于我在扫描代码时更容易找到类声明的顶部。将大

我正在通读,其中他们指出类定义后的花括号应该在下一行,“一个真正的大括号形式”

我通常将大括号放在同一行:

class OtherClass {
    function ...
}

把支架放在下一行的原因是什么?或者使用任何其他样式,就这点而言?

用户偏好。这真的没什么区别。当我使用PHP开发时,我使用了第二个选项,但现在使用C#,我使用了第一个选项。

个人偏好确实是唯一真正的“原因”。

我发现您提到的第一个样式有助于从其成员定义中直观地抵消类名。这有助于我在扫描代码时更容易找到类声明的顶部。

将大括号单独放在行上有助于从视觉上区分内部和外部。这使得快速扫描源代码和区分块与周围环境变得更加容易


另外,将大括号置于相同的缩进水平可以让眼睛更容易找到匹配项。

经常引用的原因有:

  • 更容易匹配开口大括号和闭合大括号(对于第一个示例)
  • 不要浪费另一行代码(这样可以在屏幕上显示更多行代码-第二个示例)

正如其他人所说:如果您使用第三方代码,只需遵循其约定即可。如果您使用自己的代码,只需使用您认为更好的样式。

关于这个高度主观的主题,已经有几个主题了

有些人对此很感兴趣,就我个人而言,我选择了对齐括号的“可读”选项(我不为屏幕上代码使用的不动产付费……因此紧凑性对我不感兴趣),但当我使用另一种风格为项目做贡献时,我只使用我贡献周围的样式。

制表符大小、硬与软等都一样。

真正的原因是在整个代码库中有统一的代码。这两种风格都有各自的优势,哪种风格“更好”取决于个人喜好以及语言和项目中“传统”使用的内容

如果规定了大括号的样式,请使用该样式,否则请使用到达之前使用的样式。如果你要开始一个新的项目,请使用所选语言中通常使用的语言


制表符和空格也是一样。

我认为个人或团队项目的编码风格和命名约定主要取决于个人喜好(尽管团队采用单一的编码风格和命名约定是明智的)

就我个人而言,我喜欢遵循约定,因为它让我快速地概述了我的代码和缩进结构。当然,这会在代码中花费一些额外的行数,但我认为这与优势不相称

以下维基百科文章是关于这一问题的好资源:


使用哪种支架样式重要吗?否。在同一项目或源文件上工作的每个人都使用相同的大括号样式是否重要?不这不仅无关紧要,而且如果不同的编码者使用不同的括号样式,即使是在同一个文件中,也很有用

“这段代码为什么会这样做?”


“我不知道。这是凯文的笔迹。我们去问问他吧。”

我认为不仅仅是“个人偏好”。作为人类的程序员,在需要从“图像”中提取信息时,会受到认知限制,这会使某些格式(无论是哪种格式)对我们的大脑更有用(例如,分块)。此外,我想知道为什么我们通常在代码中讨论格式差异,而不是在其他标准文本语言中讨论格式差异,比如XML。我不记得见过以K&R样式格式化的XML(原始问题中的第二个)。我发现在大多数情况下,单独的行更容易跟随,但在UIView块的情况下,更容易阅读K&R。这是一个用眼睛跟随屏幕上的行的能力问题,与个人使用一种风格而不是另一种风格的愿望无关。另外,感谢你提供的关于如何称呼它的提示:D
class OtherClass {
    function ...
}