【问题标题】:Is there a naming convention for method that returns completely a brand new object?是否有完全返回全新对象的方法的命名约定?
【发布时间】:2011-11-03 12:10:08
【问题描述】:

对于完全返回一个全新对象的方法有命名约定吗?

“生成”? “创造”?

【问题讨论】:

  • 最后,“全新对象”、“新对象”和“对象”之间有什么区别?
  • 您应该重新表述您的问题,但不要否决直接答案。

标签: .net naming-conventions naming method-names


【解决方案1】:

它可以是 @David 建议的 Create,或 GetNew - 如 GetNewProduct()。 我更喜欢 GetNew,因为 Create 更多地用在工厂方法中,GetSomething 用于普通对象,然后 GetNewSomething 强调实际上是一个新对象正在创建。

【讨论】:

  • 我真的很喜欢这个想法以及 Create 和 GetNew 前缀之间的区别。
  • 如果一个函数返回一个新对象,那不是工厂吗?我很难看出区别。
  • 不完全是——工厂(由设计模式规定)应该服务于各种对象中的一个,它们都继承自同一个类或实现特定的接口。工厂方法负责在给定某些业务规则或传递给工厂方法的参数的情况下为您提供具体的类实现。 GetNew 类似于 Get,但不同之处在于返回一个新的(一个特定的已知)对象。
  • 我必须说我很难理解 Get 的必要性。这使得函数名成为一个动词,我觉得应该为返回 void 的方法保留。我宁愿去掉 Get 并将名称设为名词,因为它会返回一些东西。
【解决方案2】:

对此有任何 Microsoft 推荐的公共约定。

【讨论】:

  • 如果您(如书面)的意思是“是”,那么也许引用它?还是您的意思是“不是”?
  • @Marc: "有any ...约定" ;)
猜你喜欢
  • 1970-01-01
  • 2011-07-27
  • 1970-01-01
  • 2015-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-21
  • 2020-02-05
相关资源
最近更新 更多