Дизайн окна переменных (отладочных) часов - PullRequest
0 голосов
/ 06 апреля 2009

Я реализовал язык сценариев, который поддерживает создание и использование .NET объектов.

Для простоты использования я хочу реализовать пользовательский интерфейс для поиска переменных в памяти.

Я проверил переменные окна отладки / просмотра в Visual Studio и в Eclipse, и они оба, кажется, используют один и тот же шаблон - древовидное представление отношения переменной <-> свойства, что хорошо, но для этого нужно много кликов «развернуть узел» чтобы найти значение определенного свойства или поля.

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

Можете ли вы порекомендовать любую хорошую (или необычную) реализацию интерфейса отладки / просмотра / наблюдения за переменными, в дополнение к тому, что я уже видел (Visual Studio, Eclipse).

Идея состоит в том, чтобы иметь возможность визуально понять состояние объекта всего за один раз взгляд (или как можно ближе к нему).

Ответы [ 4 ]

2 голосов
/ 08 апреля 2009

Это может быть похоже на то, что вы имеете в Visual Studio / Eclipse, но последние сборки WebKit Safari 4 ) имеют хороший способ просмотра объекта JavaScript в панель консоли веб-инспектора:

Demo Object in WebKit's Web Inspector Console
(источник: quintusquill.com )

Кроме того, панель «Stackframes & Variables» в отладчике Dashcode ' очень проста в использовании:

alt text
(источник: quintusquill.com )

Наконец, вы рассматривали возможность включения окна поиска? Это было бы очень полезно, если пользователю нужно найти конкретное свойство, которое скрыто глубоко внутри объекта (и они знают его имя).

Steve

0 голосов
/ 08 апреля 2009

Я полностью согласен - древовидное представление должно быть наиболее неправильно используемым элементом управления GUI в мире. К сожалению, я не знаю ни одного отладчика, который делает это лучше :-(

0 голосов
/ 06 апреля 2009

Может помочь своего рода предварительный просмотр, когда объект раскрывается, пользователь может проверить, какие свойства интересны

- a
  [ ] prop1 : value1
  [*] prop2 : value2
  [ ] prop3 : value3

Пользователь увидит

+ a : { prop2 : value2 }

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

0 голосов
/ 06 апреля 2009

Это можно сделать аналогично тому, что происходит при наведении курсора на переменную в редакторе Visual Studio в режиме отладки: появляется подсказка, отображающая имена и значения для всех свойств этого объекта, а также при наведении курсора на любой из элементы в этом списке вы получите дополнительные всплывающие окна для деталей этих объектов, а также. Таким образом, вы можете развернуть и получить то, что вам нужно, просто перемещая мышь. Возможность заблокировать любое из этих представлений в окне просмотра также будет бонусом. Надеюсь, это поможет!

...