良好的编码习惯-在一行C#中编写多个命令

时间:2018-09-26 08:34:05

标签: c#

我想创建一个字符串模式,这将需要我编写两行代码:

string linePattern = "|";
for (int i = 0; i < columns; i++) linePattern += "{" + i + ",-" + sizes[i] + "}|";

现在将其写在一行中以查看字符串的使用变得更容易是好还是不好的做法:

string linePattern = "|"; for (int i=0; i<columns; i++) linePattern += "{"+i+",-"+sizes[i]+ "}|";

最终字符串例如:

"|{0,-4}|{1,-2}|{2,-7}|{3,-3}|{4,-8}|";

编辑:

这个问题的原因是,从我的角度来看,在两个不同的行中进行变量声明和赋值是非常丑陋的。还有另一种写此字符串的方法被认为是好的做法吗? (请注意,可能需要根据列数来扩展此模式)

string linePattern = /* string generator here */;

echo("linePattern = |{0,-4}|{1,-2}|{2,-7}|{3,-3}|{4,-8}| ");

1 个答案:

答案 0 :(得分:4)

是的,这是不好的做法。它不仅适用于C#,而且适用于所有语言。

许多软件公司以及框架和语言都有编码准则,不鼓励在一行中输入多个X符号。

IDE的一条垂直线也显示了行的结束位置。

有时在现代4K显示器中,这种局限性似乎很保守,但请记住,并非每个人都有这样的显示器。所以我们应该坚持下去。

之所以这样做,是因为在一行上滚动并不直观,尤其是要阅读不止一个应该在逻辑上分开的想法。

在我看来,即使循环仅包含一个命令,也跳过{}也是不好的做法。