Отладка при помощи средств визуализации отладчика (Debugger Visualizers) Visual Studio 2005 - Анализируем функциональность cредств визуализации отладчика
ОГЛАВЛЕНИЕ
Анализируем функциональность cредств визуализации отладчика
В общем, cредства визуализации отладчика должны выполнять 2 задачи: во-первых, при получении экземпляра объекта определенного типа они должны создать пользовательский интерфейс, отображающий подробное описание объекта; во-вторых, они должны содержать необходимую связь для взаимодействия с отладчиком в Visual Studio. Сложностью создания cредства визуализации является то, что он работает в 2 различных процессах: в пределах отладчика Visual Studio, а также в запущенной программе. Средствао реализовано в виде сборки, содержащей мета-данные, указывающие определенный тип данных, с которыми должно работать cредство визуализации. Когда разработчик начинает отладку в Visual Studio, среда загружает все cредства визуализации и определяет, с какими типами данных они могут работать. Далее, когда разработчик наводит указатель на переменную в окне с кодом либо в окнах Locals, Autos, и Watch, Visual Studio отображает иконку увеличительного стекла.
Нажатие на иконку заставляет cредство визуализации загрузить данную информацию из программы и передать ее той программе, которая расположена в пределах отладчика и которая отобразит информацию на экране. Данная передача информации из одной части средства в другую происходит с использованием бинарной сериализации посредством потоков; окончательным результатом будет то, что любые объекты, переданные между данными частями cредства визуализации, должны быть проиндексированы. Как только cредству визуализации, работающему в отладчике, передается объект для отображения, он ответственен за создание пользовательского интерфейса для вывода значения объекта. Это в большинстве случаев подразумевает создание формы (Windows Form) и загрузку значений в элементы управления, основываясь на полученной информации объекта.