【发布时间】:2015-02-01 19:11:43
【问题描述】:
所以前几天我正在查看 PSR 编码标准(我已按时遵循),我总能理解所有事情的原因,并且我在过去 10 多年中所做的所有工作大部分都是以这种方式编码的在我的大学时代,非常相似的标准被强加给了我——它只是卡住了。
但是,我确实想知道PSR-2 标准中的这条注释:
命名空间声明后必须有一个空行,使用声明块后必须有一个空行。
这是为什么?我不反对它,但我确信有某种背景或历史需要解释,而且它从来没有真正跳出来告诉我为什么。我想明显的原因是易读性,但我觉得这个标准有更深层次的原因。
我在做这件事时 - 有没有人知道任何好的资源来解释所有 PSR 指南背后的逻辑?在试图说服其他人遵循它们时,有一个官方的推理和历史会产生特定的标准,这很有用,他们可能不相信这符合他们的最大利益。
【问题讨论】:
-
易读性似乎是显而易见的答案。你还需要什么理由?易读性本身就是一个重要的原因。基本上整个 PSR-2 都是关于易读性的。对于 PSR-2 中的所有其他规则,您可能会问同样的问题,答案通常是因为它是这样决定的,因为这是大多数[起草标准]的人认为最易读的。
-
您可能应该省略问题的最后一段,以免它因过于宽泛而被关闭;也就是说,剩下的问题是在征求意见。
-
邮件列表有很多历史。 Here is a particularly relevant thread.
-
@deceze - 不同意,PSR 是关于互操作性的,并且还鼓励易于修改、可扩展、可调试的代码。易读性只是随之而来的胜利。它过于主观,不能成为编码标准的唯一基础。
-
PSR 总体上是关于互操作性的,是的。 PSR-2 特别是“只是”一个编码风格指南。它与 API 级别的互操作性无关,它只是一种统一的方式来设置样式,以便不同的程序员可以轻松地阅读它们。这是关于“人类级别的互操作性”。
标签: php coding-style standards psr-2