Спагетти-код
Материал из Википедии — свободной энциклопедии
Спагетти-код — плохо спроектированная, слабо структурированная, запутанная и трудная для понимания программа, особенно содержащая много GOTO, исключений и других конструкций ухудшающих структурированность.
Спагетти-код назван так, потому что ход выполнения программы похож на миску спагетти, то есть извилистый и запутанный. Иногда называется «кенгуру-код» (kangaroo code) из-за множества инструкций jump.
[править] Пример
Ниже приводится пример спагетти-кода на Бейсике, выполняющего простое действие — печать цифр от 1 до 10 и их квадратов. Реальные примеры спагетти-кода гораздо более сложные и создают большие проблемы при обслуживании программ.
10 i = 0 20 i = i + 1 30 if i <= 10 then goto 80 40 if i > 10 then goto 60 50 goto 20 60 print "Программа завершена." 70 end 80 print i; " квадрат = "; i * i 90 goto 20
Тот же код, написанный в стиле структурного программирования:
for i = 1 to 10 print i; " квадрат = "; i * i next i print "Программа завершена."
[править] См. также
[править] Ссылки
- О вреде оператора Go To — статья Эдсгера Дейкстры.