Mes conventions de programmation

Publié le 19/07/2008
Par Damien
370 mots
DevBlog

Précédemment sur le blog : [RegExp] Capturer les URL dans une page web

Victime d’une chaîne, il faut que je vous parle de mes conventions de programmation (PHP, semble-t’il, mais il y aurait beaucoup à dire sur le CSS et le XHTML).

Alors hop un petit exemple de code (ne vous posez pas la question de la logique, c’est juste un extrait).

Notation

J’utilise le lowerCamelCase pour toutes les variables et les noms de fonctions, et le UpperCamelCase pour les classes. J’ai utilisé un temps la notation hongroise mais j’ai vite abandonné, par flemme peut être :P

J’ai pas vraiment de convention sur la langue utilisée, mais en général les fonctions / classes sont en Anglais, et le reste en Français (ça dépend aussi du projet, de qui est susceptible de lire le code plus tard…).

Indentation

Je suis un mono-maniaque de la tabulation :P Voyez dans l’exemple comment j’indente le Array, chaque clé et chaque valeur se retrouve sur la même colonne.

Mes tabulation sont réglés à 4 espaces.

Accolades

Je les met en fin d’instruction, uniquement quand elle sont obligatoire (pour une instruction simple je met tout sur une ligne).

Je n’utilise jamais la notation alternative (: [code] endif;), j’aime pas vraiment.

Espaces

Comme les tabulation, c’est important et j’en met à peu prêt partout, je n’aime pas que mes variables et mes opérateurs soit tout collé ^^

Guillemets

J’utilise souvent les doubles quotes, même si je concatène toujours quand je veux afficher une variable. C’est juste pour éviter d’avoir à échapper les simples quotes dans un texte par exemple. Si il faut que j’affiche de l’HTML par contre j’utilise des simples quotes, parce que mon HTML est exclusivement composé de doubles quotes. Vous suivez ? :D

Commentaires

J’en met quand j’ai le temps, j’utilise PHPDoc, super pratique avec Komodo quand il nous affiche la doc d’une fonction qu’on a créé au moment de remplir ses attributs… perfect.

Je met donc un bloc PHPDoc sur mes classes et fonctions, et si besoin des commentaires additionnelles en utilisant // pour décrire les passages tendu.

Voilà je pense avoir tout dit, peut être que j’en ferais de même pour le CSS, l’XHTML, le Javascript qui répondent à des conventions différentes.

Je passe le bouzin à OncleTom et à Dator.