Il semble que les erreurs ponctuelles soient l'une des erreurs de programmation les plus courantes (sinon les plus fréquentes) (voir /software/109/what-are-common-mistakes-in-coding et sagesse conventionnelle).
Quelle est la raison pour laquelle ils sont si courants, est-ce lié au fonctionnement du cerveau humain?
Que pouvons-nous faire pour éviter de tomber en proie à une erreur?
Réponses:
C'est en quelque sorte quelque chose à voir avec le fonctionnement du cerveau humain. Nous sommes câblés pour être "assez bons" pour des tâches qui ne nécessitent généralement pas une précision de niveau technique. Il y a une raison pour laquelle les cas que nous avons le plus de difficulté à traiter sont appelés cas «marginaux».
L'encapsulation est probablement la meilleure façon d'éviter les erreurs de coupure. Par exemple, au lieu d'utiliser une boucle for qui itère une collection par index (de 0 à count - 1), utilisez une boucle de style for-each avec toute la logique de l'endroit où s'arrêter intégrée dans l'énumérateur. De cette façon, vous n'avez à obtenir les bonnes limites qu'une seule fois, lors de l'écriture de l'énumérateur, au lieu de chaque fois que vous parcourez la collection.
la source
Il y a quelque chose de spécial dans la façon dont le cerveau gère les bordures et les bords.
Bien qu'il soit plus facile pour le cerveau de penser en termes de plages et d' espaces , se concentrer sur un bord semble nécessiter un peu plus d'attention. Voici comment cela se passe, une perte d'attention momentanée ou une concentration insuffisante et vous avez raté la frontière.
Un autre léger ajout au problème est que différents environnements de programmation ont des systèmes d'indexation différents commençant à 0 ou 1, ce qui pourrait ajouter de la confusion aux personnes activement exposées aux deux types d'environnements.
la source
Je pense que cela est dû au changement de contexte. Dans notre vie de tous les jours, nous avons tendance à utiliser des index basés sur 1. Pour cette raison, notre cerveau est incapable de graver le bon comportement dans la mémoire à long terme.
la source