Альтернатива MDI В последнее время уже никто не сомневается в том, что так называемый многодокументный интерфейс (MDI) не является удачным решением. Он появился в те времена, когда ресурcов компьютера и операционной системы всегда не хватало, и несколько "дочерних" окон внутри главного окна программы требовали меньше ресурсов, чем несколько окон программы. Позже стали видны его значительные недостатки с точки зрения удобства использования - пользователю приходилось постоянно открывать, закрывать, двигать, менять размеры окон, тратя на это время и отвлекаясь от своей работы. Но какие же могут быть альтернативы MDI? Начнем с того, что для некоторых типов приложений такой проблемы вообще не существует (небольшие утилиты, служебные программы, в которых небольшого окошка достаточно для отображения всего, что может программа), а для других приемлемое решение уже существует (документно-ориентированные приложения, такие как Word, Excel, решение состоит в переходе назад к SDI (один документ - одно окно)). Для остальных типов программ хорошее практическое решение предлагается в следующей работе шведских ученых [1]. В этом документе теоретически и практически показывается эффективность использования метафоры "рабочих мест" (workspaces) для создания интерфейсов программ. |
Смысл
основной идеи заключается в том, что до начала
создания интерфейса производится
подготовительная работа, в результате которой
выясняются: - Категории
пользователей Затем строится интерфейс в соответствии с принципом "одна рабочая ситуация - один экран программы", на котором должна быть представлена вся необходимая в данной ситуации информация. Помимо простоты и понятности такого решения для пользователя, существуют и другие положительные стороны:
Важной частью интерфейса такой системы является средство переключения между экранами. В упомянутой выше работе в качестве примера приведено решение в виде вертикальной полоски меню у правого края экрана, пункты которого сделаны в виде кнопок с картинками на них (см рис). Но этот вариант переключателя имеет свои недостатки: - Панель переключателя закрывает
полосы прокрутки и кнопки управления окном |
Поэтому я
предлагаю другое решение, предварительно
названное мною "плоское меню" (см .рис). В
верхней части окна располагается панель с
плоскими кнопками, названия которых
соответствуют рабочим экранам программы. Кнопка
в нажатом состоянии означает что данный экран
сейчас активен в рабочей части окна программы.
Этот подход был испробован на практике в трех реальных программах и показал хорошие результаты. Даже неопытные пользователи быстро уясняли для себя механизм экранов и переключения между ними. Разрабатывая интерфейс программы описанным в этой статье способом, нужно также стремиться к тому, чтобы вся информация находилась в рабочих экранах (1-й уровень), или в крайнем случае на 2-м уровне (окна диалогов для детальной информации или настроек). При большем числе уровней теряется простота программной модели и практически все преимущества использования рабочих экранов. В остальном предложенный подход является в подходящих случаях достойной альтернативой многодокументной модели интерфейса. Источники 1. "Workspaces enhance efficiency -
Theories, concepts and a case study" 16.08.2000 |