Глава 11. Zoom-интерфейс

Николай (unDEFER) Кривченков

2009-08-02

Среди других Джеф Раскин в своих книгах рассказывает об идее Zoom-интерфейса.

Среди современных приложений наиболее удачной иллюстрации этой идеи является интерфейс приложения Google Earth. Вы можете легко приблизится к любому уголку нашей планеты, или наоборот отдалится так, что на экране целиком поместиться вся Земля.

Касательно других приложений согласно идее Zoom любая кнопка интерфейса должна иметь полное описание, которое будет видно при приближении.

Что касается применения этой идеи на практике в unDE, полной реализации подобно интерфейсу Google Earth осуществить не удастся. Всё же любая надпись в мелком масштабе не имеет особо узнаваемого узора, а потому будет не плавное изменение масштаба, но во всяком случае возможность увеличения детализации.

Например, при просмотре исходного кода программы, уменьшение масштаба может приводить к свёртыванию кода в список функций, дальнейшее уменьшение может приводить к выводу списка файлов проекта.

Вывод сообщений программ в консоль должны иметь возможность разворачивания в более подробные сообщения или менее подробные.

Сейчас ситуация обстоит таким образом, что человек ещё до запуска программы часто должен выбрать уровень детализации отладочных сообщений. Однако когда уровня детализаций оказывается недостаточно, приходится перезапускать программу. Ещё хуже когда уровень детализации выбирается на этапе сборки программы.

В unDE уровень детализации сообщений программы можно будет менять непосредственно во время их просмотра. Сами же сообщения всегда будут генерироваться программой для системы в полном объеме. Это тоже является частью реализации Zoom-интерфейса.

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

Помимо всего система автоматически должна сохранять время, когда сообщение возникло, и источник (процесс), из которого оно поступило.

SourceForge.net Logo