未维护订单类型操作的默认值_为什么值类型对可维护软件很重要

未维护订单类型操作的默认值

几周前,我读了一条包含这张照片的推文,有人说:“这就是为什么值类型有用的原因!”。 之后,我想起了几年前发生的情况,因此我决定写一篇关于它的博客文章。

在某些项目中,我看到了很多验证代码,这非常疯狂。 在大多数情况下,方法的参数如Doubles,BigDecimals或Strings,然后在每种方法的开头进行大量业务验证。 这些业务验证分散在整个代码库中,大部分时间都是复制粘贴。 这些验证包含技术验证,例如空检查和业务验证。 由于多种原因,此类情况确实不是最佳选择。

此博客文章描述了即使不进行域驱动设计,也应该了解并使用值类型的概念的原因。

为什么这么糟?

首先, 代码不反映业务领域 。 这些方法参数中的某些参数相互依赖,并且随后的验证检查与该参数结合形成了业务规则,就可维护软件而言,这实际上是很糟糕的。 为什么? 因为该软件提供了产品所有者想要的功能,但是在代码库中很难找到此特定的业务规则,因为您无法搜索该业务人员所说的特定名词。 我已经不止一次遇到这种情况。 我必须掌握整个代码库,因为不清楚在哪里可以找到该业务规则以及哪个类或方法负责。

另一方面, 语义还不清楚 。 当使用字符串而不是值类型作为方法参数时,以错误的方式使用方法会更容易导致错误。 想象一个带有两个Strin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值