Écrire une bonne fonction en 3 étapes

En travaillant sur différents projets, je me rends compte que les fonctions longues ayant beaucoup d’opérations sont difficiles à comprendre au premier coup d’œil. L’art d’écrire des fonctions efficaces et compréhensibles est essentiel pour créer un code maintenable. Une fonction bien conçue devrait être concise, claire et se concentrer sur une tâche spécifique. Dans cet article, nous allons voir quatre étapes importantes afin d’obtenir des fonctions de qualité !

Je le redis : une fonction contenant trop d’opérations est difficile à appréhender. La première règle est d’écrire des fonctions courtes. Pour améliorer la lisibilité et la compréhension du code, il est essentiel de découper les fonctions en morceaux plus petits et plus gérables.

Comme le dit Robert C. Martin “Vos fonctions doivent être courtes. La deuxième règle est qu’elles doivent être encore plus courtes que cela”.

Je vous parle ici de la responsabilité unique des fonctions. Une fonction ne devrait accomplir qu’une seule tâche. Si une fonction fait trop de choses, cela rendra son comportement difficile à prédire et à comprendre. Pour déterminer si une fonction fait plusieurs choses, il est utile de se demander s’il est possible d’en extraire une autre fonction ayant un nom descriptif différent de son implémentation. Cette approche favorise la modularité et la réutilisabilité du code.

Les structures de contrôle imbriquées, telles que if/else ou while, peuvent rendre le code difficile à lire et à maintenir. Idéalement, chaque bloc d’instructions conditionnelles devrait occuper une seule ligne, ce qui permet de garder la fonction englobante concise, mais aussi d’ajouter une valeur documentaire car la fonction appelée à l’intérieur du bloc aura un nom parfaitement descriptif. Arbitrairement, le niveau d’indentation d’une fonction ne devrait pas être supérieur à deux. Les fonctions sont ainsi plus faciles à lire et à comprendre.

En suivant ces étapes, vous pouvez écrire des fonctions de qualité et faciles à comprendre pour n’importe quel développeur qui passera après vous sur votre code. En gardant à l’esprit l’importance de la lisibilité et de la modularité, il est possible de créer un code évolutif qui répond aux besoins de l’utilisateur