Comment coder avec style ? 😎

Pour bien se retrouver dans son code, il est important de bien nommer les choses. Rapide tour d’horizon de la convention de nommage à adopter pour le Javascript.

Les conventions de nommage

En programmation, on peut retrouver plusieurs conventions de nommage. Voici la listes des plus répandues :

  • Le Camel case : les mots sont liés, sans espace. Chaque mot commence par une majuscule, sauf le premier firstName
  • Le Pascal case : les mots sont liés, sans espace. Chaque mot commence par une majuscule FirstName
  • Le Kebab case (ou Spinal case) : les mots sont en minuscule et liés entre eux par un tiret first-name
  • Le Snake case (ou Underscore) : les mots sont en minuscule et liés entre eux par un underscore first_name

💡 En JavaScript, nous n’utiliserons que le Camel case et le Pascal case.

Les variables

Elles sont partout. Logique : on s’en sert constamment. Bien les définir est crucial pour comprendre son code ! 😊

// Bad
let value = "John"
let val = "John"

// Good
let firstName = "John"

À la lecture de votre code, si vous avez du mal à comprendre ce que fait une variable, n’hésitez pas à la renommer.

Pour déclarer une variable on préférera le faire en Camel case :

// Bad : Pascal case
let FirstName = "John"

// Bad : Kebab case
let first-name = "John"

// Bad : Snake case
let first_name = "John"

// Good : Camel case
let firstName = "John"

Les booléens

Pour déclarer des booléens, on ajoute une petite subtilité : un verbe juste devant.

Exemple :

// Bad
let visible = true
let admin = true
let online = true
let run = true

// Good
let isVisible = true
let areAdmin = true
let hasOnline = true
let canRun = true

Les fonctions

Les fonctions utilisent le Camel case et le même patern que les booléens : elles utilisent un verbe.

// Bad
let user() => {
    ...
}

// Good
let getUser() => {
    ...
}

Les classes

Les classes sont déclarées en Pascal case.

Pourquoi… ? Parce qu’elles ont la classe ! 😎

Ou parce que le concept de classe est plus fort qu’une déclaration de variable ! 😉

// Bad
classe userRole {
    ...
    getUser() {
        ...
    }
}

// Good
classe UserRole {
    ...
    getUser() {
        ...
    }
}

💡 Vous avez remarqué ? On déclare les méthodes d’une classe comme les fonctions !

Les constantes

Vous vous souvenez, je vous ai dit qu’en JavaScript on utilisait seulement le Camel case et le Pascal Case ? 🤓

Et bien les constantes sont un peu l’exception à cette règle. Mais rien de bien méchant : les mots sont en majuscules séparés par un underscore.

// Bad
const time = 60
const daysInYear = 365

// Good
const TIME = 60
const DAYS_IN_YEAR

Aller plus loin

Pour aller plus loin, n’hésitez pas à vous rendre sur le lien suivant : https://github.com/GavBaros/clean-code-javascript-fr.

Il s’agit de quelques conseils tirés du livre de Robert C. Martin.