Спагетти-код — это уничижительный термин из жаргона информационных технологий, вызванный такими факторами, как неясный объем работ по проекту, отсутствие опыта и планирования, неспособность согласовать проект с правилами стиля программирования и ряд других, казалось бы, мелких ошибок, которые накапливаются. и сделать ваш код менее упорядоченным с течением времени.

В целом беспорядочный код, с которым нелегко работать, в результате чего программа не поддается сопровождению в долгосрочной перспективе.

Как правило, спагетти-код возникает, когда несколько разработчиков работают над проектом в течение нескольких месяцев или лет, продолжая добавлять и изменять код и область программного обеспечения, оптимизируя существующую программную инфраструктуру.

Неясно, когда фраза «спагетти-код» вошла в обиход; однако в 1977 году появилось несколько ссылок, в том числе Макароны лучше, чем спагетти Гая Стила. В книге 1978 года Учебник по дисциплинированному программированию с использованием PL/I, PL/CS и PL/CT Ричард Конвей использовал этот термин для описания типов программ, которые «имеют такую ​​же чистую логическую структуру, как тарелка спагетти», фраза, повторенная в книге 1979 года Введение в программирование, которую он написал в соавторстве с Дэвидом Грайсом. В статье 1988 года Спиральная модель разработки и усовершенствования программного обеспечения этот термин используется для описания прежней практики модели кодирования и исправления, в которой отсутствовало планирование, что в конечном итоге привело к Разработка модели водопада. В книге 1979 года Структурированное программирование для программиста на языке COBOL автор Пол Нолл использует фразы спагетти-код и крысиное гнездо как синонимы для описания плохо структурированного исходного кода. код.