Gastero Prod

  • Aller au menu
  • Aller au contenu
  • Aller au pied de page
  • Accueil
  • Blog
  • Photos
  • Liens
  • Lifestream
Vous pourriez préférer naviguer sur la version spécifique iPhone / iPod Touch de ce site...

Mes conventions de codage

Date de publication
1/août
2008
Commentaires
3 commentaires
Tags
développement, informatique

Oncle Tom m’a envoyé en douce il y a quelques jours une patate chaude en m’invitant à vous parler de mes conventions de codage. Vaste sujet, et surtout très vite trollesque, de quoi se régaler.

J’avais commencé à mettre le sujet en perspective avec un bref historique de mon expérience du développement informatique, mais ce qui devait être bref s’est révélé plutôt étoffé, donc c’est devenu un article à part entière sur mes aventures informatiques, et il y a tellement à dire que je ne l’ai pas fini... bref, passons tout de suite au cœur du sujet !

En fait, au risque de décevoir, j’ai plus des habitudes que des conventions strictes de codage, et même si j’ai des préférences personnelles, j’essaie en général de m’en tenir aux conventions qui me sont dictées par les projets auxquels je participe.

Après quelques projets sur lesquels j’étais plutôt isolé, comme phpMyChat, et des discussions sur les newsgroups fciwap puis fclp, ma première grosse expérience en matière de conventions de codage est venue avec PEAR1. Des discussions interminables et passionnées2 ont eu lieu sur les mailing-lists du projet lors de l’élaboration des conventions de codage, à laquelle j’ai participé fin 2001. Il était notamment question du choix d’espaces ou tabulations pour l’indentation du code3 ou du positionnement des accolades...

J’approuve au final le choix d’espaces pour les indentations, mais j’étais auparavant plutôt habitué aux tabulations, tout simplement parce que les éditeurs que j’utilisais à l’époque ne savaient pas gérer ces espaces lors de l’utilisation de la touche de tabulation, et surtout que je ne me préoccupais pas du rendu dans un autre éditeur, étant le seul à travailler sur mes projets. Je ne retrouve malheureusement pas l’exemple qui avait fini par convaincre presque tout le monde — dont moi — que les espaces étaient la meilleure solution.

Après, entre 2 et 4 espaces, je trouve que 2 espaces évitent d’avoir trop de décalage quand on a beaucoup de niveaux imbriqués, tout en préservant une bonne lisibilité. « C’est mon choix ».

Quoi qu’il en soit, il ne faut pas oublier non plus que ces conventions de codage sont comme toutes les bonnes pratiques, elles s’enrichissent au fur et à mesure des expériences, et elles évoluent toujours petit à petit, par ajustements successifs.

Côté PHP, donc, j’étais plutôt utilisateur des conventions de PEAR, mais comme je l’ai indiqué plus tôt, j’adopte systématiquement les conventions déjà en place sur les projets auxquels je participe, donc je m’intéresse maintenant à celles de symfony.

Pour le Javascript, rien de bien original, j’utilise grosso modo les mêmes qu’Oncle Tom, mais pour les CSS, je reste basique, pas d’indentation selon la cascade, et un ordre logique plutôt qu’alphabétique.

Bon, la patate est encore chaude bien que passée entre de nombreuses mains, je la refile vite fait à Oliv même s’il a fait un rapide commentaire chez Oncle Tom, NiCoS histoire d’avoir l’avis d’un fan de Django et Clochix !

Notes

[1] Pour ceux qui ne connaissent pas, PEAR est un entrepôt de classes — et non réellement un framework, même si ce terme est plus attractif — PHP répondant aux problématiques les plus courantes des développements Web.

[2] Oui, OK, trollesques, on peut le dire...

[3] Certains ont même proposer de mélanger tabulations et espaces !

Commentaires

Commenter ce billet

RSS

Commentaires déjà déposés

  • 1er août 2008 à 09h49
    Commentaire de NiCoS

    Je te déteste, me faire ça le jour de mes vacances... pfff ça attendra mon retour na !

    Répondre à ce message

    • 1er août 2008 à 10h23
      Commentaire de Nicolas Hoizey

      Quelle idée de partir en vacances, aussi !!! :-p

      Répondre à ce message

      • 16 août 2008 à 22h17
        Commentaire de NiCoS

        Voilà, c’est fait :-)

        Répondre à ce message

RSS

Derniers billets

  • Le retour du gastéropode perdu

    Incroyable, je viens de me rendre compte que mon site n’arborait plus son beau logo, sans doute depuis déjà de nombreux mois. Vous auriez pu me prévenir !

    Date de publication
    3/fév.
    2010
    Commentaires
    aucun commentaire
    Tags
    Gastero Prod
  • Citation de ARNO* (aka Arnaud Martin)

    La logique de SPIP n’est pas « compliquée » : elle est contraignante, en ce qu’elle tente d’orienter l’utilisateur. Ce qui est très différent.

    Date de publication
    14/janv.
    2010
    Commentaires
    aucun commentaire
    Tags
    citation, SPIP
  • Qui a gagné un million ?

    Bon, c’est peu forcément par rapport à tant d’autres sites, mais petit à petit cet humble site personnel lancé début 2001 a de plus en plus de visiteurs, et cela fait forcément plaisir d’avoir atteint un premier million de visites.

    Date de publication
    28/déc.
    2009
    Commentaires
    aucun commentaire
    Tags
    Gastero Prod, moi

Derniers commentaires

  • Maïeul sur session_start() et exec() ne font pas toujours bon ménage en PHP : Article sans doute très intéressant, mais l’écriture en quasi blanc sur quasi fond noir le rend (...)

  • Sur Afficher les favicon dans la barre personnelle de Firefox sous Mac OS : + 1 à ta solution merci beaucoup. Elle fonctionne toujours avec Firefox 3.5 (...)

  • NiKo sur Un menu de navigation toujours visible : C’est absolument excellent :)

  • Clément sur Ne sous estimez pas l’importance du câble HDMI : On peut aussi en trouver d’au moins aussi bons (certifiés HDMI 1.3c jusqu’à 15m) et moins cher chez (...)

  • cable hdmi dvi sur Ne sous estimez pas l’importance du câble HDMI : Salut perso j’ai trouvé un super cable hdmi sur le site EcranLounge.com, c est pas de la pub mais (...)

  • lebrani mohamed sur Les people — dont Petra Nemcova — au service des marques technologiques : tu va bien moi je m’appelle lebrani mohamed je suis au Maroc voila mon ms : (...)

  • Stéphane Santon sur Amusons nous avec des boucles SPIP et les petits nouveaux #GET, #SET et #ARRAY : Il faudrait préciser que dans le cas où il y a une partie conditionnelle sur la boucle, il ne (...)

  • gauste sur Amusons nous avec des boucles SPIP et les petits nouveaux #GET, #SET et #ARRAY : 5 décembre 2009 : Le code noir ou foncé sur fond noir de ce site est illisible (...)

  • Sur Faut-il que j’abandonne SPIP pour DotClear ? : Je vais peut-être faire une intervention hors sujet mais pourquoi ne pas plutôt migrer vers (...)

  • reno sur Un exemple de jointures entre plusieurs tables dans une boucle SPIP : c’est exactement la problematique dans laquelle j’etais pour realiser cet agenda (...)

Nuage des tags les plus fréquents

  1. 3D
  2. 404
  3. accessibilité
  4. agenda
  5. Ajax
  6. animal
  7. animation
  8. Apple
  9. bande dessinée
  10. blog
  11. Blogmarks
  12. Blu-Ray
  13. bookmarks
  14. Canon
  15. cinéma
  16. citation
  17. Clever Age
  18. client riche
  19. concert
  20. couleur
  21. création
  22. Daft Punk
  23. développement
  24. design
  25. dessin animé
  26. DotClear
  27. e-commerce
  28. ergonomie
  29. FeedBurner
  30. film
  31. Firefox
  32. Flickr
  33. fun
  34. Gastero Prod
  35. Google
  36. Greasemonkey
  37. hébergement
  38. HD
  39. humour
  40. hype
  41. IBM
  42. image
  43. informatique
  44. Internet
  45. iPhone
  46. Javascript
  47. jeux
  48. jQuery
  49. Les Nuls
  50. Linux
  51. littérature
  52. livre
  53. logiciel
  54. logiciel libre
  55. loisirs
  56. Mac
  57. macro
  58. Microsoft
  59. moi
  60. Mozilla
  61. musique
  62. ordinateur
  63. oups
  64. photo
  65. PHP
  66. phpHeaven
  67. phpMyChat
  68. PicLens
  69. presse
  70. publicité
  71. recherche
  72. RewriteRule
  73. RSS
  74. sémantique
  75. société
  76. Sony
  77. SPIP
  78. standards
  79. tag
  80. télévision
  81. vidéo
  82. Web 2.0
  83. Windows
  84. Yahoo !

A propos

L'auteur

Dans la vie professionnelle, co fondateur et Directeur Technique du cabinet de conseil nouvelles technos Clever Age et dans la vie extra-professionnelle, créateur et animateur de Gastero Prod et de Happy iPhone, responsable technique de Marketing Planet et d’autres sites web, passionné d’Internet, de cinéma, de littérature, de musique ...

L'outil
Ce site est réalisé avec le logiciel libre de gestion de contenus Web SPIP en version 2.2.0-dev SVN [14902]

Identité 2.0

Vous pourrez aussi me trouver sur ces différentes communautés en ligne :

Réseaux sociaux
Copains d’avant, Diigo, Facebook, LinkedIn, netvibes, Twitter
Photo
deviantART, Flickr, JPG Magazine, Photo.net
Geek stuff
Ohloh, Userscripts.org
Autres
La musique sur Last.fm, Le vin sur Cork’d, Les livres sur Shelfari

Blogoliste

Proches
  • Jacqueline Oud
  • Marron show
  • Glagla Dot Org
  • Cédric Hoizey
Relations
  • Chez Xavier - Thoughts
  • La Case de l’Oncle Tom
  • Maître shteshitsu
  • Prendre un Café
  • Un Electron Libre...
Autres
  • Clever Age
  • Marketing Planet
Creative Commons License

Sauf mention explicite, tous les contenus de ce site sont la propriété de Nicolas Hoizey, et sont sous licence Creative Commons « Paternité - Pas d'Utilisation Commerciale - Partage des Conditions Initiales à l'Identique » version 2.0 adaptée à la France.