(惯例)C#类名我不太确定我应该用一组分组的类来做什么。我的情况:我有11个类仅与Character.cs类相关,但所有这些类(包括Character.cs和CharacterManager.cs)都在命名空间Models.Characters中。这是更“正确”或首选的类命名方式:(示例):CharacterDetails.csCharacterSpritesCharacterAppearanceCharacterClientRightsCharacterServerRights或:Details.csSpritesAppearanceClientRightsServerRights(它们都在Models.Characters中注明(例如,Models.Characters。CharacterDetails,Models.Characters.Appearance)提前致谢。就个人而言,它“取决于”。通常我会在所有内容中添加Character一词以保持一致性,但如果您已经在Character命名空间下拥有所有内容,那么Character前缀似乎是多余的。我可以很容易地看到使用Models.Character.[X]Models.Character.[X]的较短约定,如果永远不会有另一个名为Details的类,例如UserDetails那么,在审查代码数周或数月时,Details和UserDetails可能会造成混淆从现在开始,我个人更喜欢CharacterDetails选项。最后,这是您的个人偏好,更准确地描述您的域名,Details或CharacterDetailsDetails?就个人而言,我会坚持使用第二种方法,因为命名空间的用途:分组相关的类集。第一种方法只是让类名变长,而且好处微乎其微。你的命名空间已经将他们的类分组在字符下,所以我不会用字符绰号来命名你的类。这里可能没有正确或错误的答案。我发现自己更喜欢你的第一种风格,但我也使用第二种风格。我认为在这种特定情况下,如果我是您API的调用者,我会发现使用第一种样式的代码更容易阅读。这真的是个人喜好。我更喜欢CharacterDetailsCharacterSpritesCharacterAppearanceCharacterClientRightsCharacterServerRights因为它更具可读性。您通常会使用Models.Characters.Appearance进行声明,除非您打算进行完整的表示。我赞成任何提高可读性的东西。它可能对项目和与您一起工作的团队很重要。如果只是你而不是你最喜欢的,将来会帮助你维护代码。只要您选择一个并在整个代码中始终如一地使用它,无论您选择哪个都是正确的。我个人的选择是你的第二选择。如果您的命名空间是字符,我认为没有理由在类名中使用前缀字符。想想命名类可能造成的歧义。例如,如果我有一个名为“Thread”的类代表“CharacterThread”(假设),如果我有另一个类每次使用它时都使用两个命名空间Models.CharactersSystem.Diagnostics,我必须完全限定Thread名称...这有时很痛苦。以上就是C#学习教程的全部内容:(协议)C#类名分享。收藏不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
