碰巧我的班级是(医疗)服务,您对我将如何检索医疗服务的角度命名为服务有什么建议吗?
到目前为止,我已经想到了两件事:
好奇的是,当他们的一个班级名称恰好使用编程关键字时人们会做什么。有待辩论的问题。
不确定在这里是否允许使用命名约定问题?如果不是,我很乐意删除我的问题。谢谢。
首先,这取决于许多语言。
与您的团队聊天
第二,也是最重要的!约定可能会发生很大变化,具体取决于您的团队。与您的团队交谈,并商定要使用的一种约定。永远不要忘记这个。
公约
有遵循的通用约定/标准,就像您提到的那样,使用关键字通常是一个不好的主意。我试图避免它们,就像我避免在变量名中使用数字一样,即使我正在使用的特定语言也允许这样做。原因?坚持“让我们通过在语言之间混合规则来避免问题”比每次都要检查规则要容易得多。
我经常花30分钟来思考完美的变量名,因此我已经习惯了这种思考。
长度
太长的变量名是不好的,因为它阻碍了流式读取,而太短的变量名也很不好,因为很难猜测想要的单词。您可以将其称为srvc
,但是谁会知道一个月后的含义(当然,除非您发表评论)。实际上,将元音放在用户变量中非常普遍,尤其是在低级/旧语言中。
特定情况
对于此特定示例,我不会将MedicalService
视为关键字。首先,它是一个较长名称的一部分,例如MedicalFile
看起来根本不是系统中的文件,而是带有医疗数据的表格。
我不完全知道此MedicalService
的作用,但是它看起来像是您可以在医院柜台要求的服务的通用(抽象的,可能是)类名,所以我假设是这样。 >
GenericMedicalThingToDo
是避免该关键字的一种有趣方法,但我不会这样称呼。 MedicalUseCase
似乎更好,而且很重要。
[另一方面,如果这只是一个字符串,说明用户选择的用例(考虑到您提到的Angular),我将坚持使用userMedicalChoice
(将PascalCase拖放到camelCase)。
如果经常使用实际上是关键字的单词,则可能需要在其末尾添加_
。这通常对接口不好,因为通常只在内部/私有使用这些接口。某些约定将双_
用于私有,使用单_
避免重复。
最后点:
在我使用过的许多编程语言中,都没有将关键字作为更长的变量名的一部分,因此,将其命名为MedicalService
,如果要对其进行子类化,则将其命名为GenericMedicalService
。>>
PS:
阅读不同语言的一些约定,例如Python的PEP-8和PEP-256或Google's C++ conventions。尽管并非对所有语言都有效,但它们确实为您提供了一些重要信息。