之前verilog写多了,老是想着if else要完整,否则会产生锁存器。发现现在写代码潜意识里也有这种想法,好逗。。。最近正好看到公司大牛重构代码,优化for循环和if语句,还看到《阿里巴巴Java开发手册》里控制语句里的部分内容,搜了一下发现了《重构 改善既有代码的设计》这本书,发现挺有意思。

卫语句

《阿里巴巴Java开发手册》讲到了卫语句。

代码重构——简化条件表达式

《重构 改善既有代码的设计》也讲到了这一点。

Replace Nested Conditional with Guard Clauses 

以卫语句取代嵌套条件表达式

对于特殊的不常见的行为或者异常行为,如果将其写入if else的语句中,逻辑就会显得特别复杂。将判断这些情况的条件单独列出来进行检查,如果为真就返回或者抛出异常。这样的单独检查被称为“卫语句”。

这样的代码强调出来某些异常情况,并且和正常的情况进行了分离,更易于理解。如果上面的语句不使用卫语句,就要写成下面的形式,显得不够清晰。

public void today() {
    if (isBusy()) {
        System.out.println(“change time.”);
    }
    else if (isFree()) {
        System.out.println(“go to travel.”);
    }
    else {
        System.out.println(“stay at home to learn Alibaba Java Coding Guidelines.”);
    }

    return;
}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-03-09
  • 2021-09-27
  • 2021-06-27
  • 2021-09-06
  • 2022-02-13
猜你喜欢
  • 2022-12-23
  • 2021-11-17
  • 2021-07-07
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案