英国英语还是美国英语?

117

如果您拥有一个API,并且您是一名总受众面高度国际化的英国开发人员,那么您的API应该被

setColour()
或。
setColor()

(以一个简单的单词为例。)

总体上,英国工程师对他们的“正确”拼写方式往往持守防御态度,但可以说美式拼写在国际市场上更具有“标准性”。问题在于这是否重要?其他地区的开发人员是否难以理解英式拼写,还是通常很明显事物的含义?

应该全部使用美式英语吗?


3
包括它们两个,这样不会伤害你。 - Amarghosh
1
我们的教育系统总是教授en-gb,所以我习惯在代码中写en-gb。(有时候我会懒得,在开发针对中国客户的代码时插入一些中文标识符,后来这些标识符被改成了英文) - Michael Tsang
28个回答

1

尽管英国英语是全球通用的语言,但我建议使用美国英语,就像其他人所说的那样,占据了市场的主导地位。


1

对我来说,使用英式英语工作是自然而然的,甚至不需要思考。然而,如果你正在开发内部流程,这并不重要。如果你正在创建将被公众使用的API,并且你的受众是国际化的,为什么不同时实现两种语言呢?


1

我在编程中总是使用英国英语(en-GB)。我想这是由于受英国小说的强烈影响。

然而,是否可能有两套不同的API(一套针对en-US,另一套针对en-GB),内部调用相同的函数?但这可能会使头文件变得臃肿,因此可以根据预处理器定义进行条件编译。如果您在使用C ++,可以像下面这样做...

#ifdef ENGB
     typedef struct Colour
     {
      //blahblahblah
     };
     void SetColour(Colour c);
#else
    typedef struct Color
    {
      //blahblahblah
    };
    void SetColor(Color c);
#endif

根据客户端程序员是否定义了以下的ENGB

#define ENGB

他可以使用他喜欢的文化中的API。也许对于如此微不足道的目的而言有些过度,但是,嘿,如果它看起来很重要,为什么不呢! :)

2
最好遵循美式拼写,因为几乎所有标准API都遵循它。编译器严格要求精确的拼写,因此为两个不同的语言环境提供两个不同的API是一个坏主意。文档可以适应两个不同的语言环境,但API必须保持一致。通常期望即使在使用相同API的不同地区,如德语、法语、西班牙语等不同语言的地区,虽然文档可能会提供本地语言的解释,但方法、变量等都将遵循原始API语言(最有可能是美式英语)。 - ADTC

0
如果你回顧幾百年前的語言,你會發現這種變化與美國無關,儘管很多人可能會這樣想。這些變化源於歐洲的影響,特別是法國的影響。在那之前,英文單詞“colour”實際上被拼寫為“color”。
試圖標準化是徒勞的,因為一半的中國孩子學習的是歐洲前期的英語理解方式和美國的理解方式,而另一半則是學習當下的英語。
如果你認為語言是一個問題,那麼你應該考慮臺灣的公斤重量,它重600克。我還沒有弄清楚他們是如何做到這一點的,但我希望他們永遠不要擔任飛機加油人員!

0
如果你的所有程序员都是英国人,那么使用en-gb。如果你的代码将被其他国家的程序员看到,那么en-us可能是更好的选择。
另外一个小点,我们依赖翻译服务将我们的文档翻译成其他语言。我们发现当以en-us作为源语言时,我们可以得到更好的翻译质量。

0

你需要考虑你的受众。谁会使用代码,他们期望看到什么?

我在一家在加拿大和美国都有办公室的公司工作。我们在加拿大制作文档和代码时使用加拿大拼写(非常类似于英式英语),在美国使用美式英语。

有些事情跨越国界,但拼写上的差异很少是一个问题。当美国人不知道加拿大和英式英语的不同拼写时,这实际上可以产生一些有趣的对话。有时他们可以接受,有时他们坚持要更改为“正确”的拼写。这也影响日期格式(在加拿大为dd/mm/yyyy,在美国为mm/dd/yyyy)。

当出现僵局时,我们通常选择美式拼写,因为加拿大的人熟悉两种变体。


0
我听说选择美式英语而不是英式英语的主要原因是,当英国受众面对美式拼写时,会意识到这是一个美国应用程序(或者认为它是美国应用程序),而美国受众面对英式拼写时则会认为“...嘿,这是错误的...应该是color而不是colour”。
但正如其他人所说,要标准化。选择一种并坚持使用它。

0

我更喜欢美式英语。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接