为什么Wordpress代码如此“空间快乐”?

时间:2015-01-08 作者:rinogo

WP核心、许多WP插件和WP coding standards themselves 使用非常“慷慨”的空格(不是缩进,而是括号和方括号的“内部”)。这似乎是Wordpress所独有的——这种风格/理念似乎在其他类似的项目(PHP或其他项目)中并不存在。

有关此方法的更多信息,请参阅:https://make.wordpress.org/core/handbook/coding-standards/php/#space-usage

示例:foreach ( (array) $foo as $bar ) { ...

我指的是foreach之后的空格,第一个之后(, 在决赛之前) (以及上面链接的“空间使用”中显示的其他类似空间)。

这种风格对我来说似乎没有必要——它需要更多的键入,并且(意见)使得解析代码在视觉上更加困难。(/意见)

我的愿望是辩论这种风格是否是个好主意。相反,我只是想了解这是推荐风格的动机。即使是对WP编码标准的评论也很好奇:

enter image description here

MK Safi问题的答案基本上是:

对于可读性,我的理由是,我个人认为在我们的内部项目中采用WP编码标准(关于“空间使用”)没有多大价值。然而,我很好奇我是否遗漏了什么。

Are there any reasons beyond the two listed above, ostensibly valid or not, for following Wordpress\' "Space Usage" style?

2 个回复
最合适的回答,由SO网友:kaiser 整理而成

关于em的共振;“空白”(无论是制表符还是空格):这只是一种个人喜好,一直伴随着项目。

国际海事组织的WP编码标准乱七八糟,可以忽略——只要你不为core做出贡献,这就是

另一个故事和风格指南也被忽视了”的;[…]它不会在旧代码上大量应用,因为它使svn/git历史记录很难使用。官方政策是,新代码应该遵循样式指南,但如果碰巧正确格式化了相邻代码,也可以这样做,但禁止只格式化代码或只提交格式化代码的修补程序"E

评论中的TomJNowell

备选方案

您最好还是坚持PSR 标准(即:2)或类似Symfony标准的东西(或您自己的)。

性能提高(&P);工具拥有一个编码标准(除了有一个可以共享的标准和少数讨厌它的人,而其他人则要求它)或有更多或更少的选项卡或空格,都不会给你带来任何好处。如果您担心使用了不必要的磁盘空间或程序速度较慢,您仍然可以压缩代码(请参阅GitPHPHooks project) 提交时。您将从原始文件空间中获得大约5%的好处,这与HTML语法压缩/缩小给您带来的好处相当。有Node.js minify tools 可通过npm获取。

我个人发现真正有用的是PHP Linter和PHP Mess检测器。我将两者都纳入GitPHPHooks Library 所以我不必去想或关心它的运行。

SO网友:Wyck

点后的空格是正常的,例如$baz . \'-5\', 此样式用于许多运算符的编码标准(y + z).

这样做是为了提高可读性,例如其中一个比另一个更可读。

$cow.$dog.$cat.$table.$chocolate.$puddle.$iterator.$stuctureone.$stucturetwo

$cow . $dog . $cat . $table . $chocolate . $puddle . $iterator . $stuctureone . $stucturetwo
当被其他“代码”包围时,这一点变得更加明显。

至于括号周围的空格( 1, 2, 3 ) 我不知道,我想这个论点也是为了可读性。

因为WordPressstandards themselves 如果在注释中有没有空格的括号,那么代码库本身就会与某些部分有空格而其他部分没有空格(参见下面的屏幕截图)混淆,即使在同一个函数中也是如此。

大多数PHP标准实际上做的是相反的调用括号应包含其内容(1, 2, 3) 所以WP为什么这样做有点神秘。

下面是一个WordPress函数的比较示例。

enter image description here

要比较的较大版本:http://i.imgur.com/nTEbV7v.jpg

我更喜欢右边的那个,尤其是在看全屏幕的代码时,但这是我个人的偏好。

结束

相关推荐