
Table des matières
Ouvrir table des matières
Faites un 1er jet de votre algorithme
Comme je l’ai décrit plus haut, le problème lorsqu’on est un débutant c’est que l’on n’a pas l’expérience et la maîtrise de son environnement de travail et de ce que vous avez appris de manière générale. Vous êtes donc trop préoccupé pour mettre en pratique tout ce que vous appris plutôt que sur le problème à résoudre de façon totalement inconsciente.
Préoccupez-vous d’abord du fond puis de la forme du problème. Concentrez-vous uniquement sur le problème donné et ne pas vous préoccupez de ce que vous ne maîtrisez pas encore très bien.
Rédigez directement votre algorithme dans votre langage de programmation comme vous le penser et au feeling. Laissez cours à votre imagination et oubliez les bonnes pratiques ainsi que de vouloir exploiter au mieux votre environnement de travail !
L’avantage de faire cette étape c’est que vous allez rester focus sur la résolution de votre problème, vous ne penserez qu’à cela pour rester concentrer et mettre à profit toute votre matière grise pour parvenir à écrire un algorithme fonctionnel rapidement.
Si vous ne vous sentez pas à l’aise pour produire votre algorithme directement, vous pouvez l’écrire dans ses grandes lignes sur papier pour vous en servir de guide, mais je suis sûr que vous saurez directement le faire dans votre langage de programmation. Dîtes-vous bien qu’une fois que vous avez fait cela, le plus dur sera derrière vous.
Tout devient plus clair
Avez-vous remarqué que nous avons tendance à critiquer et juger très facilement le travail de quelqu’un lorsqu’on l’a sous les yeux ? Qu’il est plus facile de le faire sur quelque chose qui existe plutôt que quelque chose qui n’existe pas ?
On se dit, mais « pourquoi a-t-il réalisé les choses comme cela » ou « je l’aurais plutôt fait de cette façon ». Certaines choses nous sautent littéralement aux yeux pour mettre le doigt sur certaines parties qui ne nous conviennent pas comme de vraies révélations.
C’est là qu’entre en jeu votre 1er jet puisqu’il va vous constituer une base de travail. Une base sur laquelle vous allez pouvoir vous autocritiquer et dont pas mal de choses vous paraîtront plus évidentes vous vos yeux. L’exercice sera d’autant plus facile pour vous puisque vous serez déjà imprégné de votre problème, car n’oubliez pas que vous venez de rédiger votre algorithme une première fois.
Relisez votre algorithme et je suis sûr et certain que vous allez mettre le doigt sur pas mal de choses à améliorer ou pas mal d’anomalies qui peuvent être résolues.
Vous entrez dans la phase qu’on appelle refactoring. Dans cette étape, vous mettrez tout à profit ce que vous avez appris et vous allez refactoriser toutes les parties de votre code qui en ont besoin. Appliquez tout ce que vous connaissez en matière de bonnes pratiques et mettez à profit votre environnement de travail pour vous y aider.
Pour résumé
Pour résumé, le but de la méthode c’est de faire les choses en 2 étapes lorsque l’on ne maîtrise pas tout son environnement de travail. La 1er étape est de se concentrer sur le fond du problème et uniquement cela. La 2ème étape est de se concentrer sur la forme du problème, en mettant toutes les connaissances que vous avez acquises en pratique en ayant une base de codes sous les yeux.
Cette méthode est pour moi l’une des méthodes les plus efficaces lorsqu’on est débutant, car elle m’a beaucoup aidé à mes débuts. Elle ne vous conviendra peut-être pas, mais cela vaut le coup de l’essayer surtout si vous rencontrez des difficultés dans la conception d’un algorithme en langage de programmation.
Il est évident que quand vous deviendrez plus à l’aise tôt ou tard avec votre environnement de travail, et que cette méthode ne vous sera plus très utile. Mais gardez en tête que de toute manière que l’on soit débutant ou non, aucun développeur ne peut produire une solution algorithmique optimisée du premier coup sans devoir passer par la case refactoring.
Si vous avez une autre méthode que vous utilisez pour ce genre de problème ou si vous rencontrez d’autres difficultés dans la mise en application de ce que vous avez appris, n’hésitez pas à me la partager.

