Je speak C#

Une grande question, difficile à répondre; dans quelle langue doit-on déclarer ses variables, méthodes et classes? Dans quelle langue devrait-on écrire ses commentaires?La syntaxe

Premièrement, il faut noter que je suis un francophone aguerri, prêt à bondir pour défendre sa langue. Mais, car il y a un mais, un problème survient; lorsqu’on développe une application, on utilise un langage de programmation. Ce langage est en quelque sorte une langue à part, un sous-ensemble de l’anglais. Sa structure et ses mots correspondent à l’anglais. Quels sont les impacts? Une lecture naturelle.

Par exemple:

if( serverConnection.IsOpened )
{
Close( serverConnection );
}

on peut facilement lire, vous me pardonnerez l’expression, en changeant notre mode lecture pour l’anglais. En effet, la lecture prend tout son sens:

If the server connection is opened, close the server connection.

Si on utilise la syntaxe francophone, on se retrouve avec:

Si la connection serveur est ouverte, fermer la connection serveur.

La lecture

Maintenant, prenons pour acquis que nous travaillons avec un framework. Celui-ci contient déjà son lot de phrases partielles (opérations) et de noms (types et propriétés). Le mélange est quelque fois dur à avaler:

foreach( Courriel courriel in listeDeCourriels.ToArray( typeof(Courriel) ) )
if( courriel is CourrielPerdu )
listeDeCourriels.Remove( courrielPerdu );

Le glossaire

On doit aussi prendre en compte les termes utilisés tout au long du projet. Prenez l’exemple suivant:

//La connection à la base de données utilise la chaîne de connection de la composante de configuration native.
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationSettings.AppSettings[CléChaineDeConfiguration];

Premièrement, il est clair que le cerveau n’associera pas instinctivement les termes à leur description. Il faut lire l’un, et traduire l’autre. Ceci ralentit substanciellement la lecture du code – quoique je n’ai aucune donnée pour appuyer mon point.. il me faudra acquérir une copie de Code Switching in Conversation, de Peter Auer.

Ensuite, le développeur se retrouve avec une tâche supplémentaire: traduire le framework.

Et s’il veut hériter de TextEditor pour intégrer le HTML, comment devra-t-il l’appeller? HtmlEditor? EditeurHtml?

Conclusion

Le mélange de plusieurs langues cause de nombreux problèmes légers qui, je crois, peuvent être mitigés en utilisant un jargon unifié.

Je considère par contre qu’un jargon francophone doit être édifié, et qu’une discussion technique puisse se faire dans notre langue natale de manière naturelle et transparente.

Qu’en pensez-vous?

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: