Skip to content

Conventions de nommage

elo edited this page Apr 24, 2020 · 48 revisions

tâche gérée par:

  • Elodie
  • Anabelle

Les conventions de nommage

coding style :


Choix de la langue pour le projet : anglais


Choix du style de codage pour ce projet : CamelCase

Récapitulatif language et coding style:

C/C++, Java,PHP, JavaScript, typeScript ==> CamelCase langages de script (Ruby, Python) ==> snake_case


Comment nommer les attributs dans mes classes

Exemple avec des recettes , ici recipe : `` Objet : recipe (au singulier)

Liste ou tableau d’objets : recipes (au pluriel)

Pour les observables : Recipes$ (dollar à la fin du nom de l’attribut.)

Pour les subscriptions : recipesSub

Dans un objet on a toujours un attribut _id dans la classe côté client correspondant à l’ID du JSON côté serveur: recipe_id

Si nécessaire on peut créer un « id_ » faisant référence par ex à la clé étrangère d’une autre table pour pouvoir y accéder: id_recipe ( l’ id correspondrait au créateur de la recette disponible dans une autre table par exemple)

L'utilisation des préfixes et des suffixes pour les identifiants et les booleans

Identifiant

Chaque ressource d'une API REST a un identifiant, souvent noté id dans la ressource. Dans les ressources liées on trouve aussi un id ainsi que l'identifiant de la ressource liée.

Par exemple l'identifiant du payment lié à un refund peut être noté : payment, id_payment ou payment_id. Le choix entre le payment et payment_id se fait en fonction des capacités de notre API et des éventuelles bibliothèques qui accèdent notre API. L'utilisation de payment est contre intuitive car on s'attend à avoir un objet payment alors qu'il s'agit juste d'un identifiant.

Utilisation intuitive de payment_id :

{ "id": "re_390312",

"object": "refund",

"payment_id": "pay_490329",

...

}

Utilisation intuitive de payment :

{ "id": "re_390312",

"object": "refund",

"payment": {

  	`"id": "pay_490329",`

  	`"object": "payment",`

  	`"amount": 2200,`

  `...`

},

...

}

Les booleans:

Les booleans ont souvent des noms qui peuvent porter à confusion avec d'autres attributs du même objet. Trouver des noms qui ne portent jamais à confusion (bon courage !) ou utiliser un préfixe ou un suffixe Par exemple un attribut paid. Est-ce qu'il s'agit d'un attribut qui indique que le paiement est payé ou alors de la date à laquelle il a été payé ? solution à ce problème :

payment = payplug.getPayment(id='pay_CD9SCD')

payment.is_paid # c'est payé, pas de doute on le sait tout de suite.

Methodes :

getRecipe, setRecipe, addRecipe

Clone this wiki locally