Le code qui n'en est pas qu'un

Le code de la route n'est pas constitué uniquement de lois. Non, il s'agit plutôt d'une combinaison de lois, de règlements dans lequel on trouve également des règles de civisime et de savoir-vivre.
Pour preuve, notez par exemple le principe de prudence contenu dans l'article R412-6 : « Tout véhicule en mouvement ou tout ensemble de véhicules en mouvement doit avoir un conducteur. Celui-ci doit, à tout moment, adopter un comportement prudent et respectueux envers les autres usagers des voies ouvertes à la circulation. Il doit notamment faire preuve d'une prudence accrue à l'égard des usagers les plus vulnérables. »

De même, la convention de codage ne peut être uniquement un recueil de règles. Certes, elles sont nécessaires et y figurent en bonne place. Par exemple, on y trouvera des indications concernant la langue utilisée pour le développement, la description de l'arborescence, les règles de nommage des différents éléments, la façon de commenter efficacement, etc. Ceci dit, il est extrêmement opportun d'y ajouter (ou mieux d'y associer) des conseils liés aux spécifités du langage ainsi que des bonnes pratiques. Lorsque le langage permet quelques subtilités qui parfois se transforment en pièges, il est sage de les signaler.

orange_light.jpg

Permettre les exceptions

Les exceptions ? Le code de la route n'en prévoit pas. Si justement.
Un exemple : au feu jaune (appelé communément feu orange), habituellement, on s'arrête. C'est vrai mais pas tout le temps. Selon l'article R412-31 du code de la route : « Tout conducteur doit marquer l'arrêt devant un feu de signalisation jaune fixe, sauf dans le cas où, lors de l'allumage dudit feu, le conducteur ne peut plus arrêter son véhicule dans des conditions de sécurité suffisantes. » Autrement dit, si on est suivi par un 38 tonnes qui nous colle aux fesses, quand il y a le feu jaune, on ne s'arrête pas.

Il en va de même pour la convention de codage. Elle ne peut couvrir tous les cas rencontrés dans le cadre du développement. Elle doit donc prévoir qu'en certains rares cas, on puisse y déroger. Bien sûr, il est nécessaire de rappeler que ces exceptions doivent tout de même satisfaire les exigences suivantes :

  • raison valable : nettement bénéfique pour le projet ;
  • approbation : approuvée par le responsable ;
  • documentation : documentée de manière à ce qu'on en comprenne et la nature et la raison.

Trop tard, vous êtes sur l'autoroute

Quand le code de la route a-t-il été mis en place ? A-t-on attendu la construction d'une voiture ? Même pas. En 1804, Napoléon Ier a rendu obligatoire la circulation à droite de la chaussée introduisant dès lors une première réglementation routière.

Quand doit-on mettre en place une convention de codage ? Aussi rapidement que possible. Comme le code de Napoléon Ier, ne cherchez pas forcément à être exhaustif dès le début. Elle s'enrichira petit à petit. Mais en même temps, n'attendez pas d'être plusieurs pour mettre en place cette convention. Faites vivre ce document au fur et à mesure de vos lectures, de vos comparaisons avec d'autres documents existants et parfois, de vos erreurs.

car_crash.jpg

Assurance qualité

Si vous respectez le code de la route, il est fort probable que votre voiture sera en bien meilleur état que si vous décidez de ne pas en tenir compte. En effet, si vous ne l'observez pas, vous multipliez les risques d'accidents et augmentez les probabilités d'esquinter, de détériorer voire de casser votre véhicule. Et si un jour vous souhaitez la vendre, sa valeur sera donc plus élevée.

La convention de codage garantit l'état, la qualité, de votre code. L'homogénéité qu'elle suscite facilite la lecture et la compréhension du code existant. Si un jour vous souhaitez le vendre (ou mieux, le partager librement), respecter ces règles sera donc un gage de sécurité, de fiabilité (et potentiellement d'argent). Si vous tentez de vous en passer, vous risquez petit à petit d'en arriver au code vainqueur de l'IOCCC 2001.

Intégration simplifiée

Conduire est un droit soumis à une autorisation préalable. Et pour obtenir ce permis de conduire, il faut notamment réussir l'épreuve théorique du code de la route. Cette connaissance préalable garantit aux nouveaux conducteurs un cadre de conduite beaucoup plus serein. Elle leur permet également de s'insérer plus facilement et sans heurts avec les autres conducteurs.

Cette réciprocité est valable dans le cadre du développement logiciel. En effet, la convention de codage garantit aux nouveaux un cadre de développement structuré, agréable, avec des fondements solides. Cela est particulièrement essentiel dans les projets libres où chacun est encouragé à participer. Et en même temps, la connaissance de cette convention de codage leur permet de s'intégrer extrêmement efficacement dans le développement. Ils n'ont qu'à suivre les recommandations existantes et leur travail sera grandement apprécié.

Conclusion

C'est malheureusement vrai, le code de la route n'empêche ni les accidents ni les morts. Les 4000 morts en 2010 sur les routes françaises, les accidents récents nous le rappellent régulièrement. Pourtant, personne ne souhaiterait le faire disparaître.

Il en va de même pour la convention de codage. On ne peut s'attendre à ce que celle-ci fasse disparaître toutes les incompréhensions entre développeurs, toutes les erreurs d'implémentation voire même tous les bogues. Mais ce n'est clairement pas une raison suffisante pour faire l'impasse sur celle-ci. Ne l'oubliez pas : elle sauve des vies.

Pour aller plus loin, quelques exemples :