Je pense qu'un bon point de départ (si vous ne voyez rien d'évident) serait de le "déboguer". Sauf si vous voyez des problèmes possibles dès le départ, un bon point de départ est de faire une petite liste de valeurs de test. Les bonnes valeurs sont une valeur «normale» (normale), une valeur «zéro» ou «vide», des valeurs nulles, une très petite valeur (une chaîne de 1 caractère, l'int 1, etc.), une très grande ou très longue et des valeurs «étranges» spécifiques au type (par exemple, caractères Unicode pour les chaînes, nombres négatifs pour les entiers, etc.). Cela ne ferait pas de mal de mentionner que normalement vous écririez des tests unitaires en utilisant ces valeurs pour tester le code, et les exécuteriez simplement pour vérifier la fonction.
Commencez par parcourir vos valeurs de chemin heureux. Pour une fonction d'addition, vous pouvez commencer par 3 ou 4. Examinez chaque ligne pour les fautes de frappe et les erreurs logiques, en suivant les valeurs des variables locales au fur et à mesure. J'espère que vous trouverez quelques bugs. Lorsque vous aurez terminé avec le chemin heureux, vous aurez une meilleure idée du code et, espérons-le, vous vous sentirez un peu moins submergé - alors dites quelque chose comme: "Maintenant que j'ai une meilleure idée de ce que fait ce code, je suis va prendre du recul et y jeter un œil ", alors faites juste cela - en recherchant des choses qui vous paraissent différentes comme des choses que vous auriez faites différemment (mauvaises décisions de conception, variables mal nommées, enquêter sur des bogues possibles, etc.).
Si cela ne vous mène nulle part, ou si vous avez l'impression de manquer de choses à dire, revenez à votre liste de valeurs de test et parcourez-la à nouveau avec une nouvelle qui, selon vous, est susceptible de causer des problèmes.
Cela vous permettra au moins de démarrer.