我不确定我应该在我的源代码中的哪里添加新的空行。我想编写易于阅读和理解的漂亮代码。
它是仅基于对象还是基于概念?有例子的答案对我最有帮助。
就我个人而言,我并没有使用太多的垂直空白——其他人会推荐比我在下面描述的更多的东西。只要不同事物之间存在某种视觉分离,我就想查看代码,而不是空行。我倾向于把:
两个连续的空白行在我看来有点可疑,我自己几乎从不这样做。三只是在我的显示器上浪费了非常好的空间 - 任何想要分开的东西都应该 IMO 把它们放在不同的文件中。
自动文档(Javadoc、Doxygen、Pydoc 等)的注释块也提供视觉分离——比几行空格更有效,比任何数量的空格都更有效率。
当你在团队中工作时,复制你修改的任何文件的样式。不要重新格式化它以符合您自己的喜好,不要使用您喜欢的格式添加新代码。要么同意一种房屋风格,要么接受它。
我认为这是个人喜好或公司标准的问题,但在办公室里,即使我们有一些准则,每个人都有自己的代码编写方式,空格是其中一个差异。
我更喜欢使用大量的空行。每次我的代码上下文发生变化时,我都会将这部分与之前和接下来的部分分开,并在之前注释整个块。
这取决于您自己的喜好或您公司的准则,您必须在其中创建回车符。事实上,这样的指导方针还将决定你放置空格、制表符的位置以及你的呼吸方式。好吧,也许不是最后一次。
如果你是一个人,并且希望编码方式简洁,你总是可以考虑实施 Microsoft StyleCop。它可以控制您的编码习惯,您可以将其配置为随心所欲。
就像每个人都表示每个人都有自己的方法。就我而言,有几件事我喜欢始终如一地做。
超过一行的注释前后空行。
每节课前后至少有两个空行。
函数用一行分隔。
其他空行更多可选。这里的事情是我喜欢评论和课程脱颖而出。通常适当的缩进可以满足大多数其他需求。这里的技巧是除非万不得已,否则永远不要浪费垂直空间。
如果您必须使用其他人的代码,我想如果他们遵循相同的空白时间表,您会很高兴。迷失在函数或类定义中可能会很麻烦。
这可能是喜好或房屋风格的问题。
我在函数之间以及较大函数调用中的逻辑块之间包含空行。
我的代码标准是:
}
)例子:
string a = "Note: ", b= "This", c= "A", d= "String", e= "Test";
int f=1, h=1;
string A { Get; Set; }
string B { Get; Set; }
string C { Get; Set; }
string D
{
Get
{
Return this.d;
}
Set
{
if (value == "Foo")
{
// DoSomething
}
this.d=value;
}
}
//empty line
查看 StyleCop 的源代码布局:http://stylecop.codeplex.com/.
我还推荐 FxCop 或 ReSharper。
另外,Control K D 布局文档但不整理空行?
如果一个函数非常复杂,以至于我们想要放置空行以使其更易于理解,那么它可能需要一些重构,而不是空行。
即,考虑这个简化的 php 片段:
function doStuff(){
$a = new A();
$result = $a->foo();
$b = new B();
$result += $b->bar();
return $result;
}
在我看来会更好:
function doStuff(){
$result = $this->processA();
$result += $this->processB();
return $result;
}
通过这种方式,您仍然可以在不浪费文件空间的情况下提高可读性。
我经常用我的笔记本电脑工作,不得不在文件中滚动很多东西是很烦人的。如果代码可以干净,避免不必要的空行,开发和理解会更快。