Coder proprement

Je viens de terminer la lecture de l’excellent livre « coder proprement ». Ce livre donne énormément de bonnes pratiques sur le développement. Que de leçons sur ce livre malgré mes 20 ans de dév. Merci encore au site qui me l’a conseillé: jesuisundev. Pour ceux qui ne peuvent/veulent pas prendre le temps de lire tout le PDF, je vais noter ci-dessous les conseils que je jugent essentiels.
Si vous suivez ces conseils, vous verrez les choses vraiment différemment après.

Nommer proprement les choses:

Qu’ils s’agissent de fonctions, de variables, de modules… nommer correctement les choses pour s’y retrouver est essentiel: pas de info, value, et surtout pas de L (qui se confond avec 1)… Regrouper les choses liés dans des package, et surtout découper les en micro éléments. Pas de librairie « fourre-tout » qui regroupe plein de choses, mais plusieurs qui respectent un sens et qui regroupent des fonctions similaires. Ne préfixer pas les classes avec des types, nom de paquets ou autres. Aujourd’hui les IDE sont capables de typer, ou de vous indiquer ce genre de choses.

Des fonctions simples et élégantes:

Les fonctions doivent rester simples et ne doivent faire qu’une chose mais le faire bien. Eviter d’avoir plus de 2 arguments, car cela les rend trop complexes (également valables pour les tests). Ne jamais passer de booléen à une fonction, mais préférez 2 fonctions (set/unset). Eviter également les switchs dans la mesure du possible.

Les commentaires:

Pensez à les nettoyer. Mieux vaut pas de commentaires que des commentaires faux qui sèment le doute. Le code devrait refléter à lui seul les intentions de son auteur. Si votre code est trop complexe, nettoyez le avant de vous dire qu’un commentaire assurera sa maintenance.

Les exceptions:

Eviter de renvoyer null, mais plutôt des objets/listes vides. Ne passer pas null en argument.
Ajouter systématiquement des blocs « try-catch-finally ». Il est ainsi plus facile de définir ce à quoi l’utilisateur du code doit s’attendre, sans se préoccuper de ce qui pourrait mal se passer dans le bloc try.

Les tests unitaires:

Si vous en faites, sachez qu’ils sont aussi importants qu’un code en production. N’oubliez pas de bien les tenir à jour, histoire de savoir rapidement si votre architecture évolue.

Multithreading:

Développez la partie multithread en dehors de la partie standard. Utilisez le moins possible de ressources partagées, et si c’est le cas, pensez à la propriété synchronized (en Java).

Conclusion:

On se perd parfois à lire du code JAVA, mais globalement ce livre est ultra intéressant (et peu importe le langage). Le passage sur les fonctions, et le nommage ont étés pour moi très enrichissants et j’ai aujourd’hui carrément changer ma façon de programmer. Ajouter à ca les standards de codage PSR , les plugins tels que PHP Code Sniffer pour faire du code propre, les détections de type pour déclarer ses variables en PHP 7.4, et vous réaliserez qu’aujourd’hui PHP permet de faire du code de très grande qualité. L’auteur avait raison, en suivant ces règles, vous passerez de simple développeur à un vrai professionnel.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.