zoukankan      html  css  js  c++  java
  • 严以律己宽以待人——数据合理性检查

    比如I/O经典问题,用户输入的可能是非期待的,我们要检查。但这个检查要做多少次了?

    现在基本都是基于模块化开发,一个大模块分成多个小模块,又分成多个。。。。这样层层嵌套,直至函数,变量。

    如果每个都做检查,工作量将是非常巨大。如何选择了?

    严以律己宽以待人

    这就是说:我们考虑“用户”可能会有错误输入,这个用户可能是一个模块的调用者,也可能是真正的输入。对待他们要“宽”一些。

    但一个模块,或者一个函数,大部分都是自己调用,这些自己调用的,因为自己明白,会传递什么,自己要接受的又是什么,所以可以严格一些。比如写了一个辅助函数,这个函数的参数非常明确,肯定传递过来的是一个正确的。也就是严格要求调用者必须一定输入符合要求的,不可能有其他情况。

    这样看,我们只需要在模块入口检查,而模块内部自己把握,有效防止了同一个参数由于传递的原因重复的检查。

    要达到这个效果,我们必须明确未来的使用者,如果只有自己则可以拟定一个非常严格的协议,如果是其它人,那就要宽松一些。

    这样有效的完成数据检查,而不过分累赘。

    这主要是在多人开发时,单独完成不同模块会带来的问题。如果协商的好的啊,不用也是一样的。但要是都采用这种原则的话,可以减少沟通,协商。

  • 相关阅读:
    让footer始终位于页面的最底部
    javascript拼接html代码
    vs2010 sp1安装
    jquery call 函数改变this作用域
    复选框选中提示车牌号正则表达式
    hibernate Session一级缓存 应该注意的地方
    整理的一些java中常使用jar包以及说明
    springmvc 生命周期
    struts2之constant 讲解 (转)
    装饰器模式
  • 原文地址:https://www.cnblogs.com/i2u9/p/2251403.html
Copyright © 2011-2022 走看看