不写容易出错的代码

Posted 21aspnet

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不写容易出错的代码相关的知识,希望对你有一定的参考价值。

下面2段代码都是完成商品名称的更新,只是第一种情况数据源是list第二种是map

第一代代码是从List里获取第0个

entity.setProduct_name(productList.get(0).getName());

第二段代码从map里获取键值

entity.setProduct_name(productMap.get(pid).getName()));

 

如果哪一天第一段代码修改了  然后忘记改第二段代码这是一种容易犯错的情况。

更多的是改了第一段代码直接复制到第二段,也可以运行但是就错了。

 

所以避免这种问题的出现你需要把这种get定义为一个对象,然后set的时候都一样。

更好的是这2段代码最好是封装一个方法。

 

封装技巧

ProuctDTO product=productInfoList.get(0);//list
ProuctDTO product=productInfoMap.get(pid);//map

因为这里不会随便改变,改变的是下面的获取里面的name等属性。

这样2段设置商品属性的代码都是:

entity.setProduct_name(product.getName());

 

所以封装的核心思想是:减少差异,从2到1!

以上是关于不写容易出错的代码的主要内容,如果未能解决你的问题,请参考以下文章

java,计算一个月中每一天商品的数量

问与答:我如何知道一个月的最后一天是哪一天?

团队名称-冲刺日志(第一天)

Problem Y: 哪一天,哪一秒?

批处理脚本错误:获取一年中的哪一天

如何知道用户在 SwiftUI 中的日期选择器中触摸了哪一天