论坛首页 Java企业应用论坛

在什么时候对参数进行验证

浏览 13984 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-05-21  
private 只在类中应用,你可以控制它;其他的就不好说了
0 请登录后投票
   发表时间:2011-05-21  
tom&jerry 写道
记得谁说过,所有的输入都是“罪恶”的,本着这个原则,每一个方法都应该验证,因为你并不知道它将被谁调用。

我同意,
private不可以反射吗?
0 请登录后投票
   发表时间:2011-05-21  
两派观点

1 宽进严出 防御式
2 严进严出 DbC
0 请登录后投票
   发表时间:2011-05-22  
我更喜欢service上验证,谁的方法谁负责验证,调用的人怎么知道你要的参数是什么呢。
0 请登录后投票
   发表时间:2011-05-23  
调用的都不知道,那还调用个啥啊。

如果是买东西。你都不知道自己买啥。那你还去干嘛啊。。。

0 请登录后投票
   发表时间:2011-05-23   最后修改:2011-05-23
不知道这个问题有什么可以纠结的~

首先人家是想规避《 冗余验证 》才去问应该在哪层做验证!是要解决这个问题,是要谈论怎么样 能规避这个问题!

而不是问,是不是所有的方法都该做验证这个问题。

其次,一个项目,如果 架构师 对数据验证的位置没有简明的标注 , 我只能说这个架构很不负责任 。

从设计上来说,很多大的方法会拆分成很多小的方法的话,岂不是所有的小方法都需要进行验证。如此以来,复用岂不

会照成代码冗余?这不是和复用的初衷背道而行吗?

现在假设所有的公共方法都加入数据有效的验证的话 , 那么冗余的验证代码会有多少?

每个人是该对自己的代码,对自己的方法负责任。 但是数据验证的位置,不应该在具体的方法内部(特例除外)

个人觉得架构师应该吧《数据有效性验证》放入一个基础中,在action中做《入口验证》,service中做《业务逻辑验

证》,工具类尽量的少做验证。

这样才能尽量减少 冗余验证的出现。

与其说:“要对自己的方法负责”,我更觉得应该《对整个程序负责》更准确些。

鄙人一些浅见 , 轻拍
1 请登录后投票
   发表时间:2011-05-23  
15210494746 写道
不知道这个问题有什么可以纠结的~

首先人家是想规避《 冗余验证 》才去问应该在哪层做验证!是要解决这个问题,是要谈论怎么样 能规避这个问题!

而不是问,是不是所有的方法都该做验证这个问题。

其次,一个项目,如果 架构师 对数据验证的位置没有简明的标注 , 我只能说这个架构很不负责任 。

从设计上来说,很多大的方法会拆分成很多小的方法的话,岂不是所有的小方法都需要进行验证。如此以来,复用岂不

会照成代码冗余?这不是和复用的初衷背道而行吗?

现在假设所有的公共方法都加入数据有效的验证的话 , 那么冗余的验证代码会有多少?

每个人是该对自己的代码,对自己的方法负责任。 但是数据验证的位置,不应该在具体的方法内部(特例除外)

个人觉得架构师应该吧《数据有效性验证》放入一个基础中,在action中做《入口验证》,service中做《业务逻辑验

证》,工具类尽量的少做验证。


这样才能尽量减少 冗余验证的出现。

与其说:“要对自己的方法负责”,我更觉得应该《对整个程序负责》更准确些

鄙人一些浅见 , 轻拍

赞同,不要为了形式而形式,系统外入口都要验证,系统内部没必要,内部可以通过管理来达到

0 请登录后投票
   发表时间:2011-05-23  
LZ所言差矣,什么时候验证都行,关键在于service方法是不是只有action方法调用,想清楚这个好办了
0 请登录后投票
   发表时间:2011-05-23   最后修改:2011-05-23

楼主这个帖子非常有意识,如今竟然没有一个“隐藏”或者“新手”贴,我投个良好

 

0 请登录后投票
   发表时间:2011-05-23  
skzr.org 写道

楼主这个帖子非常有意识,如今竟然没有一个“隐藏”或者“新手”贴,我投个良好

 

谢谢了哈,在javaeye发贴,是要做好被投“隐藏”和“新手”的准备。

0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics