在论坛的java版看了几篇关于Null Ojbect模式文章。有些收获。
直接写上自己的结论:
1.PO对象无需默认值,如果是空,则返回Null。由上层判断是否为空。并可以在代码的注释中写明。
2.集合类型 list,set,map等有空默认值。比如new ArrayList()等。避免上层多余的判断。
解释下。如果pojo有空的默认值,反而容易让人误解,混淆。反而null更加直接。
集合型不同。集合型的默认空值大部分情况并不会影响逻辑,以及上层代码的编写。为了避免不必要的非空判断,可以返回默认。
这种null object 的设计方式 非要称为设计模式。感觉有些过。算作编码准则 更加合适。
直接写上自己的结论:
1.PO对象无需默认值,如果是空,则返回Null。由上层判断是否为空。并可以在代码的注释中写明。
2.集合类型 list,set,map等有空默认值。比如new ArrayList()等。避免上层多余的判断。
解释下。如果pojo有空的默认值,反而容易让人误解,混淆。反而null更加直接。
集合型不同。集合型的默认空值大部分情况并不会影响逻辑,以及上层代码的编写。为了避免不必要的非空判断,可以返回默认。
这种null object 的设计方式 非要称为设计模式。感觉有些过。算作编码准则 更加合适。
本文讨论了NullObject模式在Java POJO对象及集合类型中的应用。作者认为POJO对象不应设置默认值,而应直接返回Null;集合类型如List、Set等则可提供默认空值以减少上层代码的非空判断。

1186

被折叠的 条评论
为什么被折叠?



