`
李宏喜
  • 浏览: 118661 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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

 
阅读更多
     在我的开发中,经常存在着多分支条件校验的的情况,例如有三种情况导致出错,而导致三种情况的原因呢,又各是三种。 如果导致校验出错的情况,有n个分支,那么出错的解空间大小也许就是2的n次方,或者是3的n次方的大小。
     如果我们在各分支上分别写条件去校验是否出错。那么可能会非常的复杂,而且对于出错的分支的预计,总是不是很全面、准确。即使你能够写出所有的出错的条件分支,那么写出来的代码将是非常丑陋的。
   
   
    
   

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

    如以下代码:

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

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

相关推荐

Global site tag (gtag.js) - Google Analytics