rails服务对象的名称约定

时间:2013-11-19 08:10:28

标签: ruby-on-rails ruby naming-conventions

通常我在给我的班级命名时使用名词。 我给了一个名词,来自动词,比如' worker '或者' 购买者'作为服务对象的名称。 在代码审查期间,据说通常会为服务对象提供动词作为名称,例如工作' '的购买'

我应该遵循哪个方向?

这是针对动词的另一个观点:

  

从清晰和自然的角度来看,它大多没有意义   语言使用动词。让我们说你有模型产品,你想要一个   服务对象将处理某些复杂条件的定价   (地理位置,颜色,航运,月相等)。这将是一件好事   服务对象ProductPricingService的候选者。你不会   只需称之为价格或定价。首先是它的暧昧。定价   什么?你卖的产品?您从供应商处获得的定价?定价   天然气今天?如果你认为这个服务对象可能是   许多模型使用,那么你正在击败服务的目的   宾语。我当然夸大了。但重点是创造   清晰可维护的代码。所以虽然你可以保存一些按键   将它命名为Price,它对另一个人来说要清楚得多(而你在5岁时也是如此)   如果您将其命名为ProductPricingService。

这是针对 deverbal nouns

的观点
  

您可以使用InvoiceFinder而不是FindInvoice,但我可以   发现将行动放在最后会导致尴尬的命名   类,所以把动词放在开头让它们更清洁。

1 个答案:

答案 0 :(得分:4)

我认为你原来的那个,使用deverbal名词更有意义。你应该使用动词作为方法名。