任务1:使用一级缩进

跟我们做重构时一样,9 条戒条我们同样从最简单的这几条开始:

  1. 方法只使用一级缩进(One level of indentation per method)

  2. 拒绝使用 else 关键字(Don’t use the ELSE keyword)

  3. 不要使用缩写(Don’t abbreviate)

方法只使用一级缩进,意思是方法体中不应该有嵌套的if/while/for表达式,这样有利于使每个方法只拥有单一的职责。一般来说,使用“提炼方法/函数”一招就可以处理大部分嵌套的代码——把它们提炼到单独的函数里去。这一条有利于我们写出职责更加单一的函数。

拒绝使用 else 关键字,在《重构》一书中有专门的一章“简化条件逻辑”来讲述,主要的手法有“以卫语句取代嵌套条件表达式”、“分解条件表达式”等。

你的任务

  1. 若有 IDE/lint 的提示能够简单修复,修复之

  2. 消除代码中所有的else关键字

  3. 消除代码中所有嵌套的if/while/for循环(函数式调用不管),使方法只存在一级嵌套

参考

  • 《重构 2》6.1 提炼函数(Extract Function)

  • 《重构 2》10.1 分解条件表达式(Decompose Conditional)

  • 《重构 2》10.3 以卫语句取代嵌套条件表达式(Replace Nested Conditional with Guard Clauses)

Last updated