在软件开发中,反证方法的典型运用

来源:互联网 发布:行行 知乎 编辑:程序博客网 时间:2024/06/04 23:21
     在我的开发中,经常存在着多分支条件校验的的情况,例如有三种情况导致出错,而导致三种情况的原因呢,又各是三种。 如果导致校验出错的情况,有n个分支,那么出错的解空间大小也许就是2的n次方,或者是3的n次方的大小。
     如果我们在各分支上分别写条件去校验是否出错。那么可能会非常的复杂,而且对于出错的分支的预计,总是不是很全面、准确。即使你能够写出所有的出错的条件分支,那么写出来的代码将是非常丑陋的。
   
   
    
   

    在软件开发中,我们可以运用数学的证明方法中的反证法。 使程序的逻辑分支,直接得出最终的错误结果。例如,不允许重复值的产生。只需要写出产生重复值时的处理逻辑即可。

    如以下代码:

   
      if (amount >= 2) {                    Ext.Msg.alert('提示', '存在重复的数据!');                    return false;      }    

   不仅仅在做这样的条件校验时,可以用到反证法。在软件开发的过程中,有许多地方,可以运用反证法,使得问题的解法优化!
  • 大小: 28.7 KB
  • 查看图片附件
0 0