Spaghetti code: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Etichette: Annullato Modifica da mobile Modifica da web per mobile
Collegamenti esterni: Aggiunto il template "FOLDOC"
 
(12 versioni intermedie di 10 utenti non mostrate)
Riga 1:
[[File:Spaghetti.jpg|miniatura|Un piatto di [[spaghetti]] è indissolubilmente intrecciato, da qui il nome ''spaghetti code''.]]
'''''Spaghetti code''''' è un termine dispregiativo per il [[codice sorgente]] di quei [[Programma (informatica)|programmi]] per [[computer]] che hanno una [[struttura di controllo]] del flusso complessa e/o incomprensibile, con uso esagerato ed errato di ''[[GOTO|go to]]'', [[Eccezione (informatica)|eccezioni]], [[Thread (informatica)|thread]] e compagniaaltri bellacostrutti e Amongus.di ''Branchingbranching'' (diramazione del controllo) non strutturati.<ref>{{Cita web|https://stackoverflow.com/questions/195520/what-is-spaghetti-code|What is spaghetti code?|28 settembre 2016|lingua=en|data=28 ottobre 2010}}</ref><ref>{{Cita web|https://www.gnu.org/fun/jokes/pasta.code.html|Spaghetti Code|28 settembre 2016|lingua=en|data=aprile/maggio 1992}}</ref>
 
Il suo nome deriva dal fatto che questi tipi di codice tendono a assomigliare a un piatto di spaghetti, ovvero un mucchio di fili intrecciati ed annodati.
Riga 30:
print "Programma terminato."
</syntaxhighlight>
Anche questo programma esegue salti, ma in questo caso si tratta di salti predicibili e formalizzati. Questo perché il [[IterazioneCiclo (informatica)|ciclo]] ''for'' e le [[Funzione (informatica)|funzioni]] definiscono [[Struttura di controllo|flussi di controllo]] standardizzati, mentre le istruzioni ''goto'' incoraggiano flussi di controllo arbitrari.
 
== Note ==
Riga 40:
 
== Collegamenti esterni ==
* {{FOLDOC}}
* {{en}} [https://web.archive.org/web/20070703050443/http://www.acm.org/classics/oct95/ Go To Statement Considered Harmful]. La classica descrizione degli spaghetti code fatta da [[Edsger Dijkstra]].
* {{cita web|http://thedailywtf.com/|The Daily WTF - Curious Perversions In Information Technology|lingua=en}}