Фраза "это система Unix, я знаю её" из "Парка Юрского периода" давно стала мемом среди технических специалистов. За кадром той сцены работала реальная программа, File System Navigator от Silicon Graphics для операционной системы IRIX, запущенная на настоящей рабочей станции SGI.
Идея просмотра файловой системы в трёхмерном пространстве так и не прижилась, но производительности нынешних машин хватает, чтобы попробовать снова.
Рик Арендс, создатель фреймворка Makepad, собрал собственный 3D-визуализатор исходного кода, по которому можно летать как по игровому уровню. По словам разработчика, инструмент без проблем справляется с кодовой базой на 2,5 миллиона строк и держит при этом более 120 кадров в секунду.
Опубликованное в соцсети видео идёт лишь в 60 FPS из-за ограничений платформы, но навигация выглядит плавной. Отдельно впечатляет то, что весь исходный код остаётся читаемым, а не превращается в абстрактные блоки и текстуры.
Первая версия визуализации требовала 21 ГБ оперативной памяти. После внедрения индексов и потокового сжатия Арендс снизил потребление до 3,5 ГБ, отметив, что оптимизация ещё далека от завершения.
В качестве эксперимента разработчик попробовал загрузить полное дерево исходников Chromium на 51 миллион строк, и на это ушло около 60 секунд.
Практическая польза такого подхода пока под вопросом. В комментариях предложили добавить временную шкалу, чтобы отслеживать изменения в файлах, а также трёхмерную визуализацию зависимостей между модулями. Схожие задачи уже решает коммерческий инструмент CodeCharta, который показывает изменения и "горячие точки" кода в 3D, правда без эффектных пролётов камеры.
Арендс планирует превратить визуализатор в полноценный продукт и продавать его за небольшую плату, хотя сам признаёт ограниченную полезность такой подачи информации.
С другой стороны, кто-то может взять и навайбкодить альтернативу за пару недель.
Источник новости: shazoo.ru

