"afterOrEqualDate" 方法的更好名称

Better name for "afterOrEqualDate" method

我们的代码有一个方法 whereContractEndIsAfterOrEqualDate(),我不太喜欢 "AfterOrEqualDate" 部分,因为它太长了。

这些方法有更好的名字吗?


Laravel PHP 框架具有同名的验证器:https://laravel.com/docs/5.5/validation#rule-after-or-equal

如果这是一个布尔方法,我更喜欢logical/semantic 表达此控件真实行为的方式,例如 isContractDateExpired()

通过这种方法,您可以修复方法的名称,以从对象上下文本身揭示它的意图。从访问和调用此对象的上层角度来看,声明如何检查日期是否早于或等于某个日期可能并不重要。这种方法允许我们的对象更加领域驱动和更加自主。

怎么样:

.contractValid()

.contractExpired()

?

!beforeDate() 可能更干净