C# 如何使用德语单词(或任何其他支持复合名词的语言)进行CamelCase?

C# 如何使用德语单词(或任何其他支持复合名词的语言)进行CamelCase?,c#,language-agnostic,localization,naming-conventions,C#,Language Agnostic,Localization,Naming Conventions,免责声明:如果您认为StackOverflow不合适,请随意关闭此选项,因为“太本地化”。既然这里有一个相当大的德语社区,我想我应该试一试 CamelCase经常用于编程语言约定(C#中的方法名、Java中的公共方法名等)。用英语很容易做到:你只需将单词串联起来,并将每个单词的第一个字母大写:DisplayName,InternalName 然而,德语在许多情况下支持复合名词。例如,“anzegename”(DisplayName)是单个名词,但“interner Name”(InternalN

免责声明:如果您认为StackOverflow不合适,请随意关闭此选项,因为“太本地化”。既然这里有一个相当大的德语社区,我想我应该试一试

CamelCase经常用于编程语言约定(C#中的方法名、Java中的公共方法名等)。用英语很容易做到:你只需将单词串联起来,并将每个单词的第一个字母大写:
DisplayName
InternalName

然而,德语在许多情况下支持复合名词。例如,“anzegename”(
DisplayName
)是单个名词,但“interner Name”(
InternalName
)不是。因此,后一种情况很容易用CamelCase来解释:它是
intertername
,就像英语中的CamelCase规则一样。第一个病例呢?可以

  • 使用
    anzegename
    ,与德语语法保持一致,或
  • 使用
    Name
    ,与CamelCase和其他
    *名称
    -s保持一致的外观和感觉,它们不是单一的名词
在这方面是否有一些指导方针或公认的最佳实践


我意识到,仅仅使用英文名称就可以很容易地解决这个问题,但在开发特定领域的软件时,或者在配置文件必须为没有良好英语技能的人可读时,这有时是不可行的。当你确定软件只在德语环境中使用时,为UMSATZSTEURVORANMELDUNG编一个英文翻译是没有意义的…

我不认为你有任何理由认为camelcase名称是“一致的”。挪威语(我的母语)也是如此,camelcase不应该用于其他任何东西,除了替换空白


但话说回来,我永远不会用英语以外的任何语言编写代码。

英语也有同样的问题

例如,


如果用该语言书写时前面有空格,请使用大写字母。请不要在代码中使用
if(Anzeige)then Aufruf()
非常烦人。IME最好找到英语单词,如果没有直接对应的单词,我只会使用本地化的单词。我同意这是一个麻烦。尽管如此,还是有一些情况下,不存在英语对等词,或者英语对等词会显得非常不合适或做作。在这些情况下,出现上述问题。事实上,在这些情况下,对所有单词使用德语可能是有意义的,至少在这方面是一致的。