4551
правка
Irina (обсуждение | вклад) (Новая страница: «== Постановка задачи == Комплексный процесс проектирования, анализа, реализации, настройк…») |
Irina (обсуждение | вклад) |
||
Строка 12: | Строка 12: | ||
== Основные результаты == | == Основные результаты == | ||
Системы визуализации алгоритмов прошли долгий путь с момента появления современных интерфейсов компьютерной графики; за последние два десятилетия были разработаны десятки систем визуализации алгоритмов [2, 3, 4, 5, 6, 8, 9, 10, 13, 17, 25, 26, 29]. Комплексный обзор таких систем можно найти в работах [11, 27] и содержащихся в них ссылках. Далее будут рассмотрены функции систем визуализации алгоритмов, представляющиеся наиболее привлекательными для их внедрения в процессах разработки алгоритмов. | |||
'''Важнейшие проблемы''' | |||
С точки зрения разработчика алгоритмов предпочтительнее использовать системы, обеспечивающие визуализацию на высоком уровне абстракции. В частности, его намного больше интересует визуализация поведения комплексной структуры данных (например, графа), чем получение значения конкретного указателя. | |||
Еще одной фундаментальной проблемой является быстрое прототипирование визуализаций: разработчикам алгоритмов необходима возможность создания визуализаций из имеющегося исходного кода без особых усилий и без значительных модификаций. Возможность повторного использования кода визуализации может значительно ускорить процесс создания действующей анимации. | |||
Одним из важнейших аспектов процесса разработки алгоритмов является создание библиотек. Поэтому совершенно естественно будет попытаться обеспечить сопряжение средств визуализации с алгоритмическими библиотеками программных модулей: Библиотеки должны обеспечивать стандартные способы визуализации алгоритмов и структур данных, допускающие усовершенствование и настройку разработчиками для своих конкретных целей. | |||
Инструменты визуализации программного обеспечения должны быть способны анимировать не только «игрушечные» программы, но и весьма сложные алгоритмические коды, и тестировать их поведение на больших наборах данных. К сожалению, даже системам, предназначенным для больших информационных пространств, нередко недостает продуманных механизмов навигации и методов устранения узких мест процесса отображения. Задача устранения этого типа ограничений пока остается нерешенной. | |||
Передовые отладчики в незначительной степени используют преимущества современных графических дисплеев, даже если речь идет о коммерческих средах разработки программных приложений. Тем не менее, инструменты визуализации программ могут оказаться исключительно полезными для решения таких задач, как поиск «утечек памяти», нахождение причин аномального поведения программ и оценка эффективности. В частности, среды, обеспечивающие интерпретируемое исполнение, более пригодны для интеграции расширенных возможностей для поддержки отладки и мониторинга эффективности работы программ, и многие современные системы стремятся охватить это направление исследований. | |||
'''Техника''' |
правка