Код имеет форму. Для небольшого скрипта это может быть простая стрелка. Вещи входят, вещи выходят. Большой сценарий может быть мешаниной из спагетти со стрелками, летящими в разные стороны. Перекрёстки, переходы, тупики — всё это образует страшный беспорядок. По мере того, как код растет и растет, узлы становятся все туже и туже, пока в конце концов их становится невозможно распутать. Оставь всякую надежду входящий сюда, — предупреждают комментарии, потому что одно изменение может привести к возгоранию всей системы. Из-за отсутствия тестирования и давления сверху большая часть кода заканчивается именно так.

Но в хороших системах это не столько узел, сколько сетка. Ввод следует разумным правильным путям, и возвращается логический вывод. На выходе можно применить больше кода с еще большей логикой. Если код хорош, в конце концов другая библиотека подхватывает его как зависимость, а эта библиотека подхватывает эту библиотеку, и в итоге вы получаете гигантские небоскребы кода. Яркий пример: любой популярный пакет npm. Это все равно, что читать генеалогию Адама: vscode использует gulp-chmod, который использует gulp-symdest, полагаясь наvinyl-fs, в свою очередь полагаясь на glob-stream, который использует micromatch, но использует фигурные скобки и имеет расширение. range, который, конечно же, использует fill-range, randomatic и, наконец, is-number. Это башня.

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

Экспоненциально…. Это звучит как дерево! Перевернутое дерево, конечно, но это земля информатики. А пока мы там, почему дерево? Вы можете рассматривать код как фрактал — чем глубже вы его изучаете, тем больше он запутывается.

Но почему фрактальная брокколи? Возможно, это лук. Вы снимаете один слой кода, и появляется другой слой. Функция на этом уровне вызывает библиотеку на более глубоком уровне, которая делает веб-запрос к бэкенду, который передает его древней хранимой процедуре в устаревшей базе данных, и довольно скоро у вас есть двадцать файлов, открытых в редакторе, и вы пишете так же, как вы чистите настоящий лук.

Лично мне нравится идея кода в виде звезды. ВОЗЬМИ? "ЗВЕЗДА??"

…. Я покажусь.

Какая у тебя фигура?