Código espaguete

Origem: Wikipédia, a enciclopédia livre.

Qualifica-se de código espaguete um programa de computador que não segue as regras da programação estruturada e abusa de desvios, condicionais ou não, o que torna sua leitura por seres humanos bem difícil. A expressão é uma crítica a programas mal organizados, por isso difíceis de analisar, corrigir e modificar.[1] [2]

Por exemplo, o programa a seguir

10 INPUT A$
20 GOTO 200
30 PRINT A$,B
40 GOTO 1000
100 GOTO 30
200 INPUT B
210 IF B>=0 GOTO 30
220 IF B<0 GOTO 100
500 GOTO 3000
1000 INPUT C$
1200 INPUT D
2000 IF D>0 GOTO 500
3000 PRINT A$,"+",C$,"=",B+D
5000 END

equivale ao programa:

10 INPUT A$,B
20 PRINT A$,B
30 INPUT C$,D
40 PRINT A$,"+",C$,"=",B+D
50 END

porém está em código espaguete.

Obs.: a versão acima está intencionalmente confusa e provavelmente nunca seria criada senão com este propósito.

O porquê do nome[editar | editar código-fonte]

O nome Código Espaguete vem do fato que um fluxograma do programa feito dessa forma provavelmente apresentará várias linhas se entrecruzando, como em um prato de espaguete.

Referências

  1. [1] Definição de spaghetti code em The Jargon File, version 4.4.8. Acesso em 6Jul2018.
  2. [2] TOMOV & IVANOVA. COMPUTER SCIENCE AND EDUCATION IN COMPUTER SCIENCE (CSECS 2014), At Sozopol, Bulgaria. Teaching good practices in software engineering by counterexamples. Acesso em 6Jul2018.
Ícone de esboço Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.