09-06-2009, 11:45 PM
(09-06-2009, 02:33 PM)phenix a écrit : Le mieux reste de bien ranger ses fichiers, de leur donnée un nom explicite et de mettre les actions "générique" dans des fonctions, c'est un peu la base de la programmation. Si tu es ordonné tu n'aura jamais de problème.
Je ne suis pas trop d'accord avec ce point de vue. Pour moi, on peut avoir la meilleure organisation qui existe, et passer à coté de ce genre de cas.
Souvent je procède de la façon suivante :
- je copie les bouts de code que j'ai déjà effectué qui m'intéresse dans mon nouveau système.
- je regarde les morceaux de code qui se ressemblent énormément et qui pourrait partir dans une fonction commune.
- A la fin de la deuxième étape je garde une idée en tête : Si demain on me dit que finalement les deux morceaux vont commencer à avoir des spécificités que ce soit que dans un seul cas ou dans les deux, je ne dois avoir peur de tout reconstruire.
Au final la simplification du code me sert juste dans le cadre d'une maintenance qui concerne une partie commune de mon code, cela m'évite d'avoir à faire une mise à jour dans les deux cas.
A l'inverse ce système peut se retourner contre le développeur, car il fait sa modif dans le premier cas ce qui directement impacte le second cas alors qu'il ne le voulait pas.
C'est un peu comme une librairie ou un framework, avant de mettre à jour un framework, on vérifie si ce qu'on a fait fonctionne avec cette dernière mise à jour. Certains framework prévoit de la rétro compatibilité mais ça devient vite des usines à gaz.
Je pense que construire des fonctions/des blocs , c'est un moyen simple de maintenir son code et dans certains cas ça peut s'avérer super pratique si c'est bien fait et si on ne compte pas faire énormément de maintenance dessus.
Cependant cela fige le code, et en plus les codeurs ont souvent une âme conservatrice (ils ont souvent peur de jeter leur code à la poubelle), pourtant ce n'est pas le code le plus important mais bien le dev qui travaillent derrière.