因此,我正在处理这个类,它应该通过web服务从供应商请求帮助文档。我试着把它命名为documententretriver, VendorDocRequester, DocGetter,但它们听起来不太对。最后,我在dictionary.com网站上浏览了半个小时,试图找到一个合适的词。
带着坏名字开始编程就像早上头发很糟一样,接下来的一天就会每况愈下。感觉我吗?
因此,我正在处理这个类,它应该通过web服务从供应商请求帮助文档。我试着把它命名为documententretriver, VendorDocRequester, DocGetter,但它们听起来不太对。最后,我在dictionary.com网站上浏览了半个小时,试图找到一个合适的词。
带着坏名字开始编程就像早上头发很糟一样,接下来的一天就会每况愈下。感觉我吗?
当前回答
该类只有一个合理的名称:
HelpRequest
不要让实现细节分散了你对意义的注意力。
其他回答
该类只有一个合理的名称:
HelpRequest
不要让实现细节分散了你对意义的注意力。
这是有编码标准的原因之一。有一个标准往往有助于在需要时想出名字。它有助于解放你的思想,让你去做其他更有趣的事情!(-):
我建议阅读Steve McConnell的《Code Complete》(Amazon链接)的相关章节,其中介绍了一些有助于提高可读性甚至可维护性的规则。
HTH
欢呼,
Rob
我完全理解你。我能感受到你的痛苦。我想到的每个名字对我来说都是垃圾。这一切看起来都很普通,我想最终学会如何在我的名字中注入一点天赋和创造力,让它们真正反映它们所描述的东西。
我的一个建议是查阅同义词词典。Word和Mac OS x都有一个不错的功能,它真的可以帮助我走出阴霾,给我一个好的起点,以及一些灵感。
上个月我刚刚写了一篇关于命名惯例的文章:http://caseysoftware.com/blog/useful-naming-conventions
要点是:
verbAdjectiveNounStructure -结构和形容词作为可选部分
对于动词,我坚持使用动作动词:保存、删除、通知、更新或生成。偶尔,我也会使用“进程”一词,但只是专门指队列或工作积压。
对于名词,我使用与之交互的类或对象。在web2project中,这通常是任务或项目。如果是Javascript与页面交互,则可能是body或table。关键在于代码清楚地描述了与之交互的对象。
该结构是可选的,因为它对该情况是惟一的。列表屏幕可能会请求List或Array。在web2project的项目列表中使用的核心函数之一就是getProjectList。它不修改底层数据,只修改数据的表示形式。
The adjectives are something else entirely. They are used as modifiers to the noun. Something as simple as getOpenProjects might be easily implemented with a getProjects and a switch parameter, but this tends to generate methods which require quite a bit of understanding of the underlying data and/or structure of the object... not necessarily something you want to encourage. By having more explicit and specific functions, you can completely wrap and hide the implementation from the code using it. Isn't that one of the points of OO?
在“一个词”中总结方法/类,回答它的意思是什么? 这个词应该没有对应的词。