哪种编码风格更常见?

时间:2009-05-01 04:42:21

标签: language-agnostic coding-style

在广告/推广我的编程风格方面没有形式或形式,但就“多变量声明”而言,哪种情况更专业,更常见

案例1:

private $databaseURL   = "localhost"  ;
private $databaseUName = "root"       ;
private $databasePWord = ""           ;
private $databaseName  = "AirAlliance";

案例2:

private $databaseURL = "localhost";
private $databaseUName = "root";
private $databasePWord = "";
private $databaseName = "AirAlliance";

我喜欢案例1的原因是因为我可以浏览它,并且看到所有方法都比案例2更快。此外,我可以在视觉上熟悉变量名称,这使得它更快地与它们一起工作l后者在程序上

14 个答案:

答案 0 :(得分:16)

无论项目使用哪种风格,您都不会花费一整天修复您触摸的每个文件。

答案 1 :(得分:14)

案例1.5:

private $databaseURL   = "localhost";
private $databaseUName = "root";
private $databasePWord = "";
private $databaseName  = "AirAlliance";

我不认为对齐分号会使它更具可读性,只是让更改其中一个字符串的值变得烦人,然后必须添加或删除空格以重新排列分号。

在这种情况下,看起来变量名称不太可能改变,所以排列等号后应该可以。但是,如果变量名称可能会改变,那么我会选择案例2,因为(再次)将所有内容重新排列会很烦人。 (想象一下,只需添加一个名为$databaseLongVariableName的新变量即可完成工作。)

答案 2 :(得分:8)

案例2.当您向“群组”添加新变量,或者在其中一行上添加/删除某个角色时,您不必花费时间来摆弄尝试排队。

答案 3 :(得分:5)

如果在添加新变量时更改了所有对齐,则任何diff工具都会在那里显示多个更改。只是一个想法。

另外,我做过一次。当我不得不添加一个更长的变量时,它变成了痛苦。填充所有现有的空格以匹配让我摆脱这种技术。

答案 4 :(得分:3)

有趣的问题。就我而言,没有充分的理由使用案例1.我以前从未见过这种风格,除了可能在配置文件中,并且它需要额外的时间来正确格式化代码。只要更改变量的内容,就必须重置分号。

只有在使用空格时才有效...任何使用制表符的人可能会设置不同的制表位,因此在另一个编辑器中看起来会完全不同。

我认为您提到的可读性的优势在某种程度上被写入它所需的额外工作所抵消。

答案 5 :(得分:3)

很好地调整内容非常诱人,我过去常常在PHP中调整我的访问器

function getName()  { return $this->name;   }
function getAge()   { return $this->age;    }
function getHeight(){ return $this->height; }

当您添加更长的行时会出现问题:

function getName()  { return $this->name;   }
function getAge()   { return $this->age;    }
function getNiNumber(){ return $this->ni_number; }
function getHeight(){ return $this->height; }

如果我编辑其他三行,那么当我提交更改时,会更难看出谁写了一个特定的行,并且在哪个版本中他们做了。

答案 6 :(得分:2)

对齐像=;这样的东西只会招致一大堆标签空间搞砸,然后必须在以后修复。

大多数人会在行的左侧使用制表符进行缩进,然后使用空格将内容对齐到右侧。

除了向文件添加膨胀之外,它只会成为一个大而不一致的混乱。对我而言,它不会使代码更具可读性。对某些编辑来说,它使代码甚至更少可读。

答案 7 :(得分:1)

用例2.这更标准:Google C++ Style

真的,你甚至不应该关心这一点。您的编辑器应自动自动编码您的代码。在Eclipse中尝试ctrl + shift + F.

答案 8 :(得分:0)

除非您的IDE /文本编辑器可以为您完成,否则对齐分号似乎是浪费时间。特别是如果你以后添加另一个比前一个更长的条目;你必须重新调整所有

答案 9 :(得分:0)

我刚刚解雇了我的编辑器,它只是打了我。我喜欢案例1的所有原因都是语法高亮而不浪费时间。

答案 10 :(得分:0)

案例2.每当你重新调整间距时,你的版本控制都会变得疯狂。除了具有突出显示的IDE和一些还显示变量列表的IDE之外,它实际上是浪费时间来对齐'='和';'在我看来。

答案 11 :(得分:0)

案例2.如果我遗漏了分号,我有一个程序告诉我。它是编译器

答案 12 :(得分:0)

选择您正在进行的项目是最佳选择。 (如果项目没有一套编码指南,强烈建议花五分钟来定义它们。)

许多大型程序都有工具扫描代码,寻找要排序和清理的东西。在变量的末尾添加空格可以影响其中的一些空格。

另外关于标签,我从未参与过没有确定编辑标签间距的项目。您可以随时使用您的个人文件,并在文件进入之前使用预先设置挂钩编辑文件,但是如果弄乱标签间距会让人感到烦恼。

答案 13 :(得分:0)

您可以查看“Expert PHP 5工具”一书,以便更详细地了解代码样式。 *网上有电子书*