Nie Dijkstra se "Saak teen die GOTO verklaring" pas net soveel moderne dag roeping van die naam encapsulations van die kode as funksies?

StackOverflow https://stackoverflow.com/questions/20353488

Vra

Ek weet nie hoe dit gewerk het terug in die dag, so ek het geen idee wat hy het verwys na.

Maar, neem JS:

var x = 5;
var foo = function(y) { console.log(2); };
var y = 6;
foo(); // is this not in essence a goto statement?

Indien nie, dan wat is anders omtrent gaan NA stellings?

Sou Dijkstra het teen JS op hierdie gronde?

Was dit nuttig?

Oplossing

In jou voorbeeld, jy is die roeping van'n subroutine eerder as onvoorwaardelik en permanent die oordrag van die vloei van beheer (wat is wat goto nie).

As jy sit kode na foo();, die kode sou kry uitgevoer na foo() is genoem.

Ander wenke

Nee, dit is in wese'n "GOSUB" verklaring.Het jy lees die oorspronklike papier?IMHO Dijkstra was aanstoot neem deur "swartsmeer" die staat oor jou kode.

Dit is'n sprong stelling, nie'n GOTO verklaring.Daarom is dit NIE skep spaghetti-kode.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top