【问题标题】:Better name for "afterOrEqualDate" method“afterOrEqualDate”方法的更好名称
【发布时间】:2019-11-27 12:10:17
【问题描述】:

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

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


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

【问题讨论】:

    标签: naming


    【解决方案1】:

    如果这是一个布尔方法,我更喜欢更逻辑/语义的方式来表达这个控件的真实行为,比如isContractDateExpired()

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

    【讨论】:

      【解决方案2】:

      怎么样:

      .contractValid()

      .contractExpired()

      ?

      【讨论】:

        【解决方案3】:

        !beforeDate() 可能更干净

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-03
          • 1970-01-01
          • 2019-12-17
          相关资源
          最近更新 更多