Aller au contenu principal
    Développeur5 min de lecture

    camelCase, snake_case, kebab-case : guide complet

    JavaScript = camelCase, Python = snake_case, URLs = kebab-case, constantes = SCREAMING_SNAKE_CASE. La règle dans chaque langage, en un tableau.

    Chaque langage de programmation impose ou recommande sa convention de nommage. Les ignorer fait tomber le linter, casse les imports et complique la revue de code.

    Les 6 conventions courantes

    ConventionExempleUsage typique
    camelCasenombreDeMotsVariables JS, Java, Kotlin, Swift
    PascalCaseNombreDeMotsClasses, composants React, types TS
    snake_casenombre_de_motsPython, Ruby, colonnes SQL, fichiers Linux
    SCREAMING_SNAKE_CASENOMBRE_DE_MOTSConstantes (toutes langues)
    kebab-casenombre-de-motsURLs, classes CSS, attributs HTML, npm packages
    dot.casenombre.de.motsFichiers de config (Spring, Docker)

    Convention par langage

    LangageVariableFonctionClasseConstante
    JavaScript / TypeScriptcamelCasecamelCasePascalCaseSCREAMING_SNAKE
    Python (PEP 8)snake_casesnake_casePascalCaseSCREAMING_SNAKE
    JavacamelCasecamelCasePascalCaseSCREAMING_SNAKE
    GocamelCase ou PascalCase (exporté)idemPascalCasePascalCase
    Rustsnake_casesnake_casePascalCaseSCREAMING_SNAKE
    CSSkebab-case
    SQLsnake_caseUPPERCASE

    Règles à retenir

    • URL = kebab-case obligatoire (Google guidelines : « use hyphens to separate words »).
    • Classe CSS = kebab-case (sauf BEM qui ajoute __ et --).
    • JSON = camelCase côté front (convention JS), snake_case côté Python/Ruby (Django/Rails).
    • Fichiers React/TSX : PascalCase (UserCard.tsx) pour les composants.

    Convertir tout un texte en minuscules

    Pour aller plus loin