Inglês GB ou Inglês dos EUA?

93

Se você tem uma API e é um desenvolvedor baseado no Reino Unido com um público altamente internacional, sua API deve ser

setColour()

ou

setColor()

(Para tomar uma palavra como um exemplo simples.)

Os engenheiros do Reino Unido costumam ser bastante defensivos quanto à sua grafia "correta", mas pode-se argumentar que a grafia dos Estados Unidos é mais "padrão" no mercado internacional.

Eu acho que a questão é: isso importa? Os desenvolvedores em outras localidades lutam com a grafia GB ou normalmente é bastante aparente o que as coisas significam?

Deve ser tudo em inglês americano?

izb
fonte
1
inclua ambos. não vai te machucar.
Amarghosh
Nosso sistema educacional sempre ensina en-gb, então estou acostumado a escrever en-gb em código. (Às vezes eu era preguiçoso e inseria algum identificador chinês ao desenvolver o código específico do cliente chinês, e esses foram alterados para o inglês mais tarde)
Michael Tsang

Respostas:

77

Eu tenderia a usar o inglês americano, pois isso se tornou a norma em outras APIs. Falando como programador de inglês, não tenho nenhum problema em usar "color", por exemplo.

Chris
fonte
6
A padronização é um bom objetivo, e sua API será mais facilmente aceita pela multidão internacional do que usando a versão GB.
Maitus,
54

Não sou falante nativo. Ao escrever, procuro sempre usar en-gb. No entanto, na programação, sempre uso en-uso inglês britânico, pelo mesmo motivo que não uso o alemão ou o francês como identificadores.

Konrad Rudolph
fonte
15

Depende de onde você vê a maioria de seus clientes. Pessoalmente, prefiro usar Inglês-GB (por exemplo, Cor) em meu código privado, mas vou para Cor para aplicativos / API / código publicados externamente!


fonte
7
Usar GB internamente e US externamente corre o risco de uma colisão de variável semântica - semelhante ao tipo de coisa que acontece com "color" e "color". Seu cérebro processa a palavra, não a ortografia, e isso pode causar confusão
Chris Cudmore,
1
Eu tenderia a fazer o mesmo, mas tendo cuidado com o que Chris menciona - se você usar uma grafia na API, provavelmente deve usar a mesma em outro lugar do projeto.
Mark Baker
15

Geralmente, eu seria um defensor da ortografia GB, mas acho que o código lê muito melhor se for consistente e eu acho:

Color lineColor = Color.Red;

ter uma aparência muito melhor do que:

Color lineColour = Color.Red;

Acho que, em última análise, isso realmente não importa.

Carl
fonte
8
É ainda pior se você tiver uma propriedade pública Color Color {get;}
Benjol 01 de
10

Embora eu geralmente seja muito pedante sobre a grafia correta, como um desenvolvedor do Reino Unido, eu sempre escolheria a grafia "colorida" americana. Em todas as linguagens de programação que encontrei, é assim, então por uma questão de consistência, usar 'cor' faz muito sentido.

Philip Morton
fonte
5

Supondo que seja uma API Java ou C #, provavelmente não importa, dada a difusão da funcionalidade de preenchimento automático nos IDEs. Se isso for para uma linguagem dinâmica ou em que IDEs modernos não são a norma, eu escolheria a grafia americana. Claro que sou americano e, portanto, sou obviamente tendencioso, mas parece que a maior parte do código que vejo de desenvolvedores que não são falantes nativos de inglês usam a grafia dos EUA para seus nomes de variáveis, etc.

Mike Deck
fonte
3
As diretrizes de design do .NET Framework recomendam o inglês dos EUA para fins de consistência
Mark Cidade,
@MarkCidade: Você tem um link para a recomendação mencionada? Procurei de cima a baixo sem sucesso.
Dio F
1
@DioF É mencionado no livro "Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries" de Krzysztof Cwalina e Brad Abrams
Mark Cidade
5

Como um programador de inglês, eu uso en-US para meu software dev. O inglês americano domina tão bem em quase todas as outras APIs que é muito mais fácil manter um tipo de grafia e remover a ambigüidade. É uma perda de tempo procurar um método para descobrir que a grafia está errada por uma letra devido às localizações da grafia.

Ross Anderson
fonte
4

Eu iria com os padrões atuais e escolheria a grafia do inglês americano. HTML e CSS são padrões reconhecidos com a grafia "cor"; em segundo lugar, se você estiver trabalhando com uma estrutura como o .NET, é provável que já tenha cores disponíveis em diferentes espaços de nomes.

A carga mental de ter que lidar com duas grafias atrapalharia em vez de ajudar os desenvolvedores.

Label myLabel.color = setColour();
Mauro
fonte
3

Tenho problemas com APIs que não estão em inglês dos EUA. Apenas por causa das diferenças de grafia. Eu sei o que as palavras significam, mas a grafia diferente me engana.

A maioria das bibliotecas e estruturas com as quais estou familiarizado usa a grafia dos EUA. Claro, eu sou um americano, então ... US-English é minha língua nativa.

lobo da época
fonte
3

A maior parte da documentação de desenvolvimento (assim como o MSDN) está em inglês americano.

Portanto, pode ser melhor ficar com o fluxo principal e usar o inglês americano em sua API se você tiver como alvo um público internacional.

Rinat Abdullin
fonte
2

Recebi outra amostra: serializar e serializar. :)

Pessoalmente, acho que não importa muito. Eu trabalhei em projetos que usavam países com ortografia inglês-britânico e eles usavam ortografia britânica. Ainda é inglês e não importa muito devido ao Intellisense.

pular
fonte
Tenho certeza de que meu professor de inglês me disse que 'ize terminações eram válidas em inglês da Grã-Bretanha? As terminações ise e ize são aceitáveis ​​em inglês da Grã-Bretanha, então eu izo as minhas para caber nas sépticas. ( cockneyrhymingslang.co.uk/slang/sceptic_tank )
Scott Langham
2

Como canadense, encontro isso o tempo todo. É muito difícil para mim digitar "color", pois minha memória muscular continua buscando o 'u'.

No entanto, tendo a adotar a linguagem das bibliotecas. Java tem a classe Color, então eu uso color.

Chris Cudmore
fonte
1
"c", "o", "l", Ctrl + Espaço, "."
Tom
1

Tento encontrar palavras alternativas, se possível. Vou deixar -ize deslizar. Para Color, eu poderia usar Hue, Ink, Foreground / Background ...

Do contrário, como inglês, usarei o en-GB porque ainda tenho algum orgulho do meu país e da minha origem.

Porém, se fosse para ser parte de um projeto maior, especialmente um internacional, eu manteria todo o projeto consistente acima, tendo uma pequena parte em uma variação de idioma e o resto em outra.

JeeBee
fonte
2
Não concordo em usar primeiro plano / plano de fundo em vez de cor / ou cor). frente / fundo também pode significar padrão, por exemplo. Se você deseja definir / obter um colo (u) r, é assim que você deve chamá-lo. O 'u' ausente / adicional é menos confuso do que uma propriedade com nome incorreto.
Treb 01 de
Isso é um problema no exemplo, não no princípio, mas é justo.
JeeBee
2
Btw. a grafia -ize não é um americanismo!
Jules
@Jules sim, é.
igorcadelima
@igorcadelima Pode ser britânico de uso comum, mas considere: en.wikipedia.org/wiki/Oxford_spelling
Jules
1

Eu também terei que ficar do lado do inglês americano, simplesmente para manter as coisas consistentes (como outros já notaram aqui). Embora eu seja um falante nativo de inglês americano, fiz projetos de software com empresas de software alemãs e suecas e, em ambos os casos, a tentação de ocasionalmente atingir meus colegas de equipe era usar texto em alemão ou sueco no código - geralmente para comentários, mas às vezes também para nomes de variáveis ​​ou métodos. Embora eu possa falar essas línguas, é realmente chocante para os olhos e torna mais difícil trazer um novo não falante para o projeto.

A maioria das empresas de software europeias (pelo menos aquelas com as quais trabalhei) se comportam da mesma maneira - o código permanece em inglês, simplesmente porque isso torna o código mais internacionalmente amigável caso outro programador venha a bordo. A documentação interna geralmente tende a ser feita na língua nativa, no entanto.

Dito isso, a diferença aqui é sobre dois dialetos diferentes do inglês, o que não é tão extremo quanto ver dois idiomas totalmente diferentes no mesmo arquivo de código-fonte. Então, eu diria, mantenha a API em inglês americano, mas seus comentários em inglês-GB se for mais adequado para você.

Nik Reiman
fonte
1

Eu diria que olhe como outras bibliotecas em seu idioma escolhem e seguem sua convenção.

Os designers da linguagem de programação e suas APIs integradas fizeram uma escolha, e sejam os usuários internacionais ou não, eles estão acostumados a ver grafias consistentes com essa escolha. Você não tem como alvo falantes de um idioma diferente, mas usuários de uma linguagem de programação. Provavelmente, eles aprenderam algumas palavras no idioma estrangeiro com as APIs integradas e podem não estar cientes das diferenças entre o inglês dos EUA e o inglês da GB. Não os confunda mudando de lado da lagoa.

Eu uso principalmente os idiomas .NET, e o .NET Framework usa a grafia do inglês dos Estados Unidos. Nesta plataforma, eu ficaria com o inglês americano. Não conheço nenhum idioma padronizado no inglês GB, mas se o seu já o fez, mantenha-se consistente com o idioma.

OwenP
fonte
1

Eu concordo com a trupe "go for American". Eu mesmo prefiro en-GB ao escrever e-mails e coisas assim, mas o inglês americano é praticamente o padrão em todos os círculos de programação.

dguaraglia
fonte
1

Mesmo que o inglês britânico seja o que é falado em todo o mundo - eu recomendo usar o inglês americano que, como outras pessoas disseram, domina o mercado.

user24199
fonte
1

Definitivamente inglês americano.

Shiva
fonte
1

Primeiro, estou nos EUA. No meu projeto atual, é sempre "cor", no entanto, a palavra para a qual não conseguimos escolher uma grafia é "cinza" versus "cinza".

Na verdade, ficou muito chato.

Brian Postow
fonte
1

A seleção do idioma para nomes de identificadores não tem nada a ver com o público e tudo a ver com o idioma original em que a estrutura ou API foi desenvolvida.

Não conheço muitos idiomas, mas não consigo pensar em nenhum que use outra coisa senão o inglês americano.

Os perigos de introduzir bugs sutis devido a grafias diferentes são IMHO muito grandes.

Uma substituição de função pode facilmente se tornar uma pseudo-sobrecarga.

Um arquivo de configuração pode se tornar inválido devido a diferenças de grafia.

Pode surgir uma situação em que o mesmo objeto conceitual foi definido usando várias classes, usando en-US e en-GB.

Portanto, se um trecho de código é puramente para uso interno ou também para uso externo, a grafia usada deve sempre corresponder ao idioma original da plataforma / estrutura / compilador / API.

Umar Farooq Khawaja
fonte
Eu só me importo com a consistência dentro de nossa API. Por exemplo, se nosso pacote é direcionado ao Reino Unido, apenas en-gb pode ser usado, absolutamente nenhuma grafia como "cor".
Michael Tsang
Estou supondo que você também escreve suas próprias bibliotecas de classes básicas, Michael?
Umar Farooq Khawaja
0

Se todos os seus programadores forem britânicos, use en-gb. Se o seu código for visto por programadores fora da Grã-Bretanha, en-us seria uma escolha melhor.

Um ponto menor, contamos com um serviço de tradução para copiar nossa documentação para outros idiomas. Descobrimos que obtemos traduções melhores ao usar en-us como fonte.

Jim C
fonte
0

Você precisa considerar seu público. Quem vai usar o código e o que eles esperam ver?

Trabalho em uma empresa com escritórios no Canadá e nos Estados Unidos. Usamos a ortografia canadense (muito semelhante ao inglês britânico) ao produzir documentação e código no Canadá e na ortografia dos EUA para o que é usado nos EUA.

Algumas coisas ultrapassam fronteiras, mas a diferença na grafia raramente é um problema. Pode gerar algum diálogo interessante quando os americanos não estão cientes das diferentes grafias para o candian e o inglês britânico. Às vezes eles concordam com isso, outras vezes eles insistem em mudar para a grafia "correta". Isso também afeta os formatos de data (dd / mm / aaaa no Canadá e mm / dd / aaaa nos EUA)

Quando há um impasse, normalmente optamos pela grafia dos EUA, já que as pessoas no Canadá estão familiarizadas com as duas variações.


fonte
0

A principal razão que ouvi para escolher o inglês dos EUA em vez do inglês do Reino Unido é porque o público do Reino Unido, quando confrontado com a ortografia dos EUA, percebe que é uma aplicação dos EUA (ou presume que seja), enquanto o público dos EUA confrontado com a ortografia do Reino Unido pensa '.. . hey, isso está errado .. é a cor, não a cor '

Mas, como outros disseram, padronize. Escolha e persista.


fonte
0

É natural para mim trabalhar em inglês do Reino Unido sem nem mesmo pensar nisso. No entanto, se você estiver desenvolvendo procedimentos internos, isso realmente não importa. Se você está criando APIs que serão usadas publicamente e seu público é internacional, por que não implementar ambos?

BlackWasp
fonte
0

Eu prefiro o inglês americano.

Vaske
fonte
0

Sou uma dessas pessoas em que a frequência cardíaca e a pressão arterial aumentam cada vez que sou forçado a usar o inglês americano em arquivos de configuração, etc, devido ao fato de que o software não oferece a opção de inglês britânico, mas isso é apenas mim :)

Minha opinião pessoal sobre este, no entanto, seria fornecer as duas grafias, definir setColor () e setColour (), escrever o código em uma delas e apenas fazer com que a segunda passe os parâmetros.

Dessa forma você mantém os dois grupos felizes, desde que sua inteligência fique um pouco mais longa, mas pelo menos as pessoas não podem reclamar de você usar a linguagem 'errada'.

Jimoc
fonte
7
Isso não é uma boa ideia. A API estaria repleta de métodos redundantes.
McDowell
6
Essa é uma solução muito ruim. Você provavelmente vai confundir muitas pessoas, que estão tentando descobrir a diferença entre setColour e setColor. Além disso, ele pode criar muita confusão em uma API se você tiver muitos métodos com a palavra color.
Kibbee
Meus pensamentos exatamente. Não custa nada fornecer as duas grafias e apenas documentá-las como sendo idênticas. Quanto à objeção de redundância, a usabilidade supera a ortogonalidade.
Dave Sherohman
0

Se você olhar algumas centenas de anos para trás, verá que a mudança não tem nada a ver com os Estados Unidos, por mais que muitos pensem que sim. As mudanças decorrem de influências europeias, principalmente francesas. Antes disso, a palavra inglesa "color" era, na verdade, escrita "color".

Tentar padronizar seria inútil, já que metade das crianças chinesas está aprendendo a influência pré-européia e a compreensão do inglês pelos Estados Unidos, enquanto a outra metade está assumindo o idioma inglês como está hoje.

Se você acha que o idioma é um problema, você deve considerar o Taiwan Kg, que pesa 600g. Ainda estou para descobrir como eles conseguiram isso, mas espero que nunca sejam empregados como pessoal de abastecimento de aeronaves!

Steve Keenan
fonte
0

Eu sempre uso en-GB para toda a minha programação. Eu acho que é devido a uma forte influência dos romances britânicos.

No entanto, não seria possível ter dois conjuntos diferentes de APIs (um para en-US, um para en-GB) que chamam internamente a mesma função? Isso pode sobrecarregar os arquivos de cabeçalho, então talvez dependendo de uma definição de pré-processador, uma compilação condicional? Se você estiver usando C ++, pode fazer algo como a seguir ...

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

Dependendo se o programador do cliente define ENGB ou não como abaixo

#define ENGB

ele poderia usar as APIs na cultura de sua preferência. Talvez exagero para um propósito tão trivial, mas ei, se parece importante, por que não! :)

Bharat Mallapur
fonte
2
É melhor seguir a ortografia dos EUA, pois praticamente todas as APIs padrão a seguem. Os compiladores exigem estritamente a grafia exata, portanto, não é uma boa ideia fornecer duas APIs diferentes para dois locais. A documentação pode atender a duas localidades diferentes, mas a API deve ser consistente. Em geral, espera-se que, mesmo que a mesma API seja usada em diferentes regiões, com idiomas diferentes, como alemão, francês, espanhol etc., embora a documentação possa fornecer explicações nos idiomas locais, os métodos, variáveis ​​etc. seguirão todos o idioma original da API (provavelmente Eng dos EUA).
ADTC de