• 重构第18天 用条件语句来代替异常(Replace exception with conditional)


    理解本文中的“使用条件判断代替异常”是指把没有必要使用异常做判断的条件尽量改为条件判断。

    详解

    重构前代码:

     1  public class Microwave
     2     {
     3         private IMicrowaveMotor Motor { get; set; }
     4 
     5         public bool Start(object food)
     6         {
     7             bool foodCooked = false;
     8             try
     9             {
    10                 Motor.Cook(food);
    11                 foodCooked = true;
    12             }
    13             catch (InUseException)
    14             {
    15                 foodcooked = false;
    16             }
    17 
    18             return foodCooked;
    19         }
    20     }

    重构后的代码如下所示,try   catch 做条件判断的语句改成了if   return 的方式,这样在很多程度上统一了代码的书写,同时也提高了性能。

     1 public class Microwave
     2     {
     3         private IMicrowaveMotor Motor { get; set; }
     4 
     5         public bool Start(object food)
     6         {
     7             if (Motor.IsInUse)
     8                 return false;
     9 
    10             Motor.Cook(food);
    11 
    12             return true;
    13         }
    14     }

    这个重构在项目代码中也经常用到,因为对于一部分程序员,是很难把握什么时候用try   catch ,什么地方该用try   catch 。记得之前大家还专门讨论过这些,比如如何用好以及在大中型项目中应该把它放在哪一个组件中等。

  • 相关阅读:
    java课堂作业--异常处理
    Node.js 应用---定时给自己发送邮件
    JAVA课堂作业(2019.10.21)
    添加学生信息系统
    Hdfs的java必会Api操作
    架构之美2
    mybatis知识点03
    mybatis知识点总结02
    mybatis知识点总结01
    第四周周总结
  • 原文地址:https://www.cnblogs.com/yplong/p/5373025.html
Copyright © 2020-2023  润新知