C#代码整洁之道:代码重构与性能提升
上QQ阅读APP看书,第一时间看更新

4.3 代码缩进

长度太大的方法,尤其是那种必须滚动多次才能一览其全貌的方法,是难以阅读和理解的。此时,若方法代码也没有用恰当的分级缩进格式化,那么就会成为真正的噩梦。

当遇到任何格式不当的代码时,作为一名专业程序员,应当在进行任何操作之前整理代码的格式。两个大括号之间的代码称为代码块,代码块中的代码必须缩进一个级别。而代码块中的代码块则需要继续缩进一个级别。请看以下代码:

上述代码的缩进和循环的处理都非常糟糕。它按顺序搜索学生列表,返回参数指定的具备特定ID的学生。上述代码的另一个令人生厌的地方是它的性能不佳,因为即使找到了相应的学生,循环也将继续执行。接下来我们修正缩进并改善执行性能:

在上述代码中,我们改进了代码格式,确保正确的缩进,并在foreach循环中添加了break语句确保循环在找到匹配学生时终止执行。

修改之后代码不但更加易读,性能与之前相比也会更好。如果这个代码要处理的是整个大学中73 000名学生的名单,而当匹配的学生就在列表的第一个时,若没有break语句就会造成72 999次不必要的运算。可见,上述代码中有没有break语句对性能的影响是很大的。

我们并没有更改代码中返回值语句的位置,否则编译器会报告并非所有路径都有返回值。同时这也是我们使用break语句的原因。可见,恰当的缩进可以改善代码可读性,有助于程序员理解其含义,并对代码进行必要的更改。