Localization 用其他(口语)语言编码

Localization 用其他(口语)语言编码,localization,translation,spoken-language,Localization,Translation,Spoken Language,这是我一直想知道的事情,我在网上找不到任何地方提到它。当一家来自日本的商店写代码时,我能用英语阅读吗?或者像C、PHP之类的语言有他们编写的日文翻译吗 我想我要问的是,世界上每一个编码员都懂足够多的英语,可以使用和我完全相同的保留词吗 该代码是否: If (i < size){ switch case 1: print "hi there" default: print "no, thank you"

这是我一直想知道的事情,我在网上找不到任何地方提到它。当一家来自日本的商店写代码时,我能用英语阅读吗?或者像C、PHP之类的语言有他们编写的日文翻译吗

我想我要问的是,世界上每一个编码员都懂足够多的英语,可以使用和我完全相同的保留词吗

该代码是否:

If (i < size){
    switch
        case 1:
            print "hi there"
        default:
            print "no, thank you"
} else {
    print "yes, thank you"
}
If(i
显示与我现在在英语中看到的完全相同,或者其他非英语国家的人会看到母语中的“if”、“switch”、“case”、“default”、“print”和“else”吗


编辑-是的,这很严重。我不知道一种语言的不同本地化是否有不同的关键字。或者甚至有不同的本地化。

我见过VBA被翻译成类似西班牙语的命令。这是有史以来最丑陋的事情之一。如果我的电脑上有这样的东西,我会感到羞耻的


我碰巧认为西班牙语比英语好得多;但是翻译是错误的

编程语言定义了关键字和标准类名,最好的做法是给用户定义的类型、变量和函数加上英文名(作为非母语人士,我可以说;-)

因此,是的,如果一切顺利,您将能够阅读代码

然而,Java和Perl等语言允许标识符使用完整的Unicode集,因此如果有人用汉字写类名,您可能会遇到问题

更新:对于Perl,有一个允许您用拉丁语编写Perl的工具。但事实上,这只是一个玩笑。没有人会认真对待这样的事情


第二个更新:本地化编程语言的想法并没有那么荒谬。Excel的宏语言是本地化的,但幸运的是,它存储在文件中的一种规范语言(英语)中,因此本地化只是普通语言之上的一层。这样的事情只对小的“程序”有意义,对“真正的”程序来说,它变得很难维护。

依我看,使用语言语法是毫无意义的。它只会扼杀任何形式的可移植性


唯一的例外是教育语言,比如LOGO。它们是为便于学习而设计的,因此可移植性不是问题。

正如其他人指出的那样,关键字和系统调用很可能仍然是英文的

然而,理解语言的关键字只是理解代码的一小部分。变量名、函数名和注释都可能使用作者的母语


编辑:我刚刚回到了我的青年时代,在我的TRS-80内置BASIC的映射表中将关键字切换为法语。我可以改变所有的关键字,但我不能使任何一个更大。专为搞笑节目设计的

在Java语言中,由于JavaBeans约定,某些方法必须使用英语命名(至少部分)

此约定要求通过一对getX()和setX()方法建立属性X。在法属加拿大,一些开发人员必须用法语编写代码,这导致了以下悲剧:

interface Foo {

  Color getCouleur();

  void setCouleur(Color couleur);
}

如果我理解得很好的话,问题实际上是:“世界上的每一个编码员都知道足够的英语来使用和我完全相同的保留词吗?”

嗯。。这里的主题不是英语,而是编程语言保留词。我的意思是,当我10年前开始工作时,我对英语一无所知,而且我仍然能够通过学习编程语言来编程简单的事情,即使我不知道它们的意思(英语)。事实上,这有助于我学习英语

比如说。我知道要做一个“iteración”(当然是迭代),我必须写:

 for( i = 0 ; i < 100 ; i++ ) {}
(i=0;i<100;i++)的

对我来说,“for”、“the”;“和“+”是简单的外来词或符号。后来我知道“for”是指“para”和“while”是指“mientras”等,但同时我不需要懂英语,但我需要的是知道“C”

当然,当我需要学习更多的东西时,我必须学习英语,因为文档是用这种语言编写的

所以答案是:不,我不知道我的母语是不是,while,for等等。我在英语中看到了它们,但它们对我来说并没有任何其他意义,它们对编程语言也没有任何意义

类似于bash:case中的switch语句。。以撒。什么是“以撒”。。。对我来说,bash中switch语句的结尾


我想这就是我们所说的“抽象”

别开玩笑了。几年前,微软发布了带有德国关键词和API的G#(德语夏普)-C#。当然,这是一个愚人节的玩笑,但整个网站看起来是如此真实和专业(而且是在微软网站上)。吓人

在工作中,我们使用两个现场总线系统,都是在德语国家开发的,它们的标识符是德语和英语的可怕混合,包括一些可爱的假朋友。一团糟


不,英文关键字和标识符可以。虽然有些人可能会争论它应该是颜色还是颜色:)

我读了很多代码,但问题总是在变量/方法名称和注释上,如果他们用自己的语言注释代码,使用日语或西里尔语等语言特殊字符,我们就麻烦了!但是,我认为关键字将保持英文原样。

在我参与的几个VBA项目中(是的,在我职业生涯的早期),我们必须检测安装在用户机器上的office版本,并相应地更改speradsheets中使用的公式

正如我用葡萄牙语编写的程序一样,“SUM”必须翻译成“SOMA”等等
int foo)int i, char c( }
    int six = 2 / 3:
    int two = six + 4:
    if )i > 0( }
        printf)"i is negative"(:
    {
{
// In Japanese, it makes more sense to put the keywords/modifiers as
// postfix expressions rather than prefix expressions.
(i < size)か {
     (l[i])は {
     1だ:
         「もしもし。」を書く;
     省略時値:
         「いいえ、いいですよ。」を書く;
     }
} ない {
     「はい、ありがとうございます。」を書く;
}
se (i < size){
    commuta
        caso 1:
            stampa "hi there"
        normalmente:
            stampa "no, thank you"
} altrimenti {
    stampa "yes, thank you"
}
Si (i < taille) {
    cas par cas :
        cas 1:
            afficher "salut"
        défaut:
            afficher "non merci"
} sinon {
    afficher "oui, merci"
}
se (i < dimensione){
    scegli
        caso 1:
            stampa "ciao"
        mancante:
            stampa "no, grazie"
} altrimenti {
    stampa "sì, grazie"
}