Style de codage

Python

Suivez toujours la convention PEP 8 dans sa totalité (ceci incluant la limite de 80 caractères sur une ligne).

Chaînes de caractères

Utilisez guillemets simples sauf si la chaîne est une docstring.

Les blocs de code

Merci de suivre le style de formatage “hanging grid”. Comme suit :

some_dict = {
    'one': 1,
    'two': 2,
    'three': 3}
some_list = [
    'foo', 'bar', 'baz']

Merci d’éviter de laisser pendre des parenthèses, crochets, ou virgules. Par exemple, ne faites pas cela :

this_is_wrong = {
   'one': 1,
   'two': 2,
   'three': 3,
}

Cassez les lignes de code directement après les parenthèses. Ne faites donc pas cela :

also_wrong('this is hard',
           'to maintain',
           'as it often needs to be realigned')

Linters

Utilisez :

  1. isort pour maintenir une consistance dans vos imports ;
  2. pylint pour détecter les erreurs dans votre code ;
  3. pycodestyle pour assurer que votre code respecte les conventions PEP 8 ;
  4. pydocstyle pour vérifier que vos docstrings sont correctement formatées ;
  5. eslint pour vérifier votre code Javascript ;
  6. tslint pour vérifier votre code Typescript.

CSharp (C#)

Les blocs de code

Veuillez ne pas retourner à la ligne après l’ouverture d’un crochet puis retourner à la ligne après une fermeture.

Faites :

namespace models {
    public class Employee {
        public Employee(int id) {
            if (id == 0) {
                try {
                    id = id / 0;
                }
                catch(System.DivideByZeroException exc) {
                    // We did not stick `catch(...) {` to `}`.
                }
            }
            else {
                // We did not stick `else {` to `}`.
            }
        }
    }
}

L’accès à l’instance courante

Veuillez utiliser le mot this pour accèder à l’instance courante.

Faites :

public class Employee {
    private string _nameAlias;
    private string _name;

    public Employee(string name, string nameAlias) {
        // Use this to qualify the members of the class
        // instead of the constructor parameters.
        this._alias = name;
        this._nameAlias = nameAlias;
        System.Console.WriteLine(this._name);
    }
}

Et non pas :

public class Employee {
    private string _nameAlias;
    private string _name;

    public Employee(string name, string nameAlias) {
        // Use this to qualify the members of the class
        // instead of the constructor parameters.
        _name = name;
        _nameAlias = nameAlias;
        System.Console.WriteLine(_name);
    }
}