我们的代码中有一个方法whereContractEndIsAfterOrEqualDate()
,我不喜欢“ AfterOrEqualDate”部分,因为它很长。
这种方法是否有更好的名称?
Laravel PHP框架具有同名的验证器:https://laravel.com/docs/5.5/validation#rule-after-or-equal
答案 0 :(得分:6)
如果这是一个布尔方法,我更喜欢一种更逻辑/语义的方式来表示此控件的实际行为,例如isContractDateExpired()
。
通过这种方法,您正在固定方法的名称,以从对象上下文本身揭示其意图。从较高级别的角度来看,访问和调用此对象可能并不重要,即声明如何检查日期是否在日期之前或等于日期不重要。这种方法使我们的对象更具域驱动性和自主性。
答案 1 :(得分:2)
如何:
.contractValid()
.contractExpired()
?
答案 2 :(得分:-1)
!beforeDate()可能更干净