2009-09-02 4 views
5

Est-ce que le langage C# est localisé pour les personnes dont l'ordinateur est configuré dans une autre langue que l'anglais? En d'autres termes, C# est-il toujours écrit sans condition en anglais?C# en anglais est-il universel?

+3

les mots-clés sont en anglais. – kenny

+1

Les messages d'erreur sont localisés sur la plate-forme MS .NET (que je ne suis pas particulièrement friand, car ceux de ma langue peuvent être assez obfusqués.) – Skurmedel

+2

La localisation (littéraux numériques) est également américaine. –

Répondre

13

C# est normalisé dans le C# Language Specification (ECMA-334).

Il n'y a qu'un seul ensemble de mots-clés (anglais) et c'est pareil pour tout le monde. .NET Framework (qui ne fait pas partie du langage C#) utilise également l'anglais pour tous les noms de classe et de méthode.

Bien sûr, vous pouvez nommer vos variables et noms de méthodes comme vous le souhaitez. C# prend en charge l'ensemble des caractères Unicode.

+0

C'est généralement le cas de la plupart des langues. Même si la langue maternelle parlée par un groupe de développeurs n'est pas la même, ils ont toujours besoin d'interopérer leur code, il n'y a donc qu'une seule langue. Après tout, vous ne programmez pas en anglais (ou hongrois ou autre) mais plutôt en C# (ou python ou autre). – SingleNegationElimination

16

C# est écrit en C#; C# est une langue en soi. Vous pouvez nommer vos variables comme vous voulez, mais les mots réservés sont C#, pas l'anglais, l'espagnol ou toute autre langue. Prenez le mot pour le type "int" (ou Int32). Vous ne pouvez pas dire que "int" est un mot anglais; aucune personne parlant anglais n'utilise vraiment le mot Int32 pour parler d'un nombre entier. Ou que diriez-vous de l'expression "faire tout"? Personne ne dit: "Hey Bobby, fais la tâche x tant que le temps est inférieur à 17h".

Certains des mots réservés C# ont leurs racines en anglais, mais cela ne veut pas dire qu'ils ressemblent à la langue anglaise. L'espagnol, le français et bien d'autres langues romanes partagent la même racine, mais elles ne sont pas les mêmes.

+5

L'anglais est une langue germanique, pas une langue romane ;-P. Il a beaucoup d'influences françaises/latines, cependant. –

+0

@Robert: Vous apprenez quelque chose tous les jours. J'ai retiré l'anglais de la liste. –

+2

N'esquivez-vous pas la question avec beaucoup de mumbojumbo de fractionnement des cheveux. Je pense que le questionneur a demandé s'il pouvait obtenir une version de C# où les mots-clés sont basés sur une langue autre que l'anglais. – JohannesH

0

Bien, les mots réservés sont l'anglais, pas C#. tandis que, si, pour, laissez, de, en utilisant ... etc.

Le .NET CLR dispose de crochets d'extensibilité très impressionnants pour le langage lui-même. Vous pouvez donc implémenter votre propre DSL qui a des mots-clés en français ou en espagnol assez facilement je crois.

5

Les mots-clés sont dérivés de mots anglais, mais les mots-clés ne changent jamais quelle que soit la langue locale.

Le seul endroit où j'ai vu un langage de programmation localisé est dans Excel. Les noms de fonction pour les formules sont traduits, par exemple dans une version suédoise la fonction If est appelée Om.

+0

Je parie que quelqu'un qui n'est pas familier avec le suédois voudrait essayer de comprendre une fonction complexe en suédois Excel :) Est-ce que cela incluait aussi Excel VBA? –

0

Les mots-clés C# et les noms de classe et de membre BCL sont, et seront toujours, uniquement en anglais. Cependant, il est légal de nommer vos propres classes et membres dans n'importe quelle langue que vous aimez, bien que je ne le recommanderais pas.

En outre, vous pouvez obtenir language packs for the .NET framework qui va localiser les chaînes comme les messages d'exceptions.

Questions connexes