GOTO
était souvent utilisé fréquemment dans des situations qui produisaient un code "spaghetti". En d'autres termes, pour suivre la logique du code, vous devez vous déplacer fréquemment d'un point à un autre, souvent de manière non structurée ou non évidente. Cela a conduit à un code qui était difficile à comprendre. Mais dans les vieux jours (début BASIC), GOTO
était souvent la seule façon de faire l'itération donc il n'y avait pas toujours un choix. Des langages plus expressifs ont fourni d'autres façons de faire l'itération (for
, do ... until
, while
et ainsi de suite) où la boucle était beaucoup plus évidente. Cela dit, c'est vraiment abus de GOTO
qui est considéré comme dangereux. Il a toujours sa place dans de nombreuses situations telles que la gestion des erreurs ou les machines à états finis, à condition que cela ne rende pas le code trop difficile à suivre.