Стандартные меню для приложений рабочего стола

Большинство современных графических пользовательских интерфей' сов включают в себя, как минимум, меню Файл и Правка, расположен' ные в крайней левой позиции, а также меню Справка, расположенное в крайней правой (в Mac OS X еще есть меню, название которого соот' ветствует названию активного приложения; в строке меню оно предва' ряет пункты Файл и Правка). Руководства по стилям Windows, Macintosh и даже Motif утверждают, что меню Файл, Правка и Справка являются стандартными. Может показаться, что такая фактическая кроссплат' форменность стандарта – достаточно сильное доказательство правиль' ности идиомы. Неверно! Это лишь явный признак того, что сообщество разработчиков готово беспечно довольствоваться посредственным ин' терфейсным решением, отходя от него только тогда, когда конкуренты не оставляют выбора. Название меню Файл есть результат мышления, сосредоточенного на внутреннем устройстве операционных систем, ме' ню Правка есть следствие крайней ограниченности буфера обмена, а ме' ню Справка зачастую не особенно полезно и содержит лишь один эле' мент, который непосредственно связан с помощью пользователям.

Данные соглашения по именованию меню могут заманить нас в ло' вушку проектирования беспомощных пользовательских интерфейсов. Меню в большинстве программ могут быть знакомы пользователям, но насколько хорошо они систематизируют функции? Отдельные разде' лы, такие как Вид, Вставка, Формат, Сервис и Настройка, походят скорее на названия инструментальных средств и функций, чем на названия це' лей. Почему бы не организовывать функции по признаку целей?

Мы так и слышим возгласы программистов: «Как можно изменить то, что уже стало стандартом? Люди привыкли видеть меню „Файл“!». От' вет прост: люди способны привыкнуть и к боли, и к страданиям, но это не повод их продлевать. Пользователи быстро привыкнут, если мы из' меним меню Файл таким образом, чтобы оно лучше и точнее отражало основное свое предназначение. Ключом к созданию разумной структу' ры меню является понимание ментальных моделей пользователей. Как они представляют себе выполняемые задачи? Какой терминологией пользуются? Если вы проектируете офисное бизнес'приложение и ва' ши пользователи близко знакомы с компьютером, возможно, имеет смысл использовать узнаваемые стандарты – по крайней мере, на верх' нем уровне (но, возможно, и нет). Если же вы проектируете специали' зированное приложение для узкого круга пользователей, структура меню, скорее всего, должна быть совершенно другой.

Даже с учетом сказанного в жизни, определенно, есть место и для стандартных структур меню. Во многих случаях, когда реструктури' зация меню приложения неуместна, можно добиться многого, просто разумно применяя стандарты.

Файл (или Документ)

Большинство пользователей задумывается о файлах лишь тогда, ко' гда мы принудительно сталкиваем их с моделью реализации. Гораздо более уместным в рамках целеориентированного подхода будет назва' ние раздела меню «Документ». Если приложение работает с одним ви' дом документов или объектов, полезно задуматься, стоит ли использо' вать такое название. Допустим, в музыкальном секвенсоре название

«Композиция» будет гораздо более приятным и понятным для пользо' вателя, чем «Файл». Смеем заверить: нет ничего хуже, чем думать о файловой системе во время сочинения музыки.

В главе 17 мы описали усовершенствованное меню Файл (или Документ). Мы не упомянули об одной полезной функции, которую стоит в него включить, – списке недавно открывавшихся документов, реализован' ном в приложениях Microsoft (рис. 22.3).

 
  Стандартные меню для приложений рабочего стола - student2.ru

Рис. 22.3. Меню Файл в Microsoft Word демонстрирует реализацию прекрас- ной идеи списка наиболее часто используемых документов. В главе 17 вы уже видели, как можно перестроить первые шесть пунктов меню, чтобы точнее отразить ментальную модель пользователя вместо бездумного следования устоявшейся модели реализации, которая показана здесь

 
  Стандартные меню для приложений рабочего стола - student2.ru

Необязательные меню543

Правка

Меню Правка содержит в себе инструменты для выделения, вырезания, вставки и изменения выделенных объектов (если подобных функций много, их следует вынести в отдельное меню Изменить или Формат). Не используйте меню Правка для размещения функций, которые, как вам кажется, не входят в другие группы.

Окно

Меню Окно служит для упорядочивания открытых программой окон, их просмотра и переключения между ними. Здесь можно предложить также средства для одновременного просмотра нескольких открытых документов. Никакие другие функции в этом меню фигурировать не должны. Следует заметить, что данное меню редко необходимо в прило' жениях, в которых не реализован многодокументный интерфейс (MDI).

Справка

Современные меню Справка являются примерами дурно спроектирован' ных и реализованных справочных систем. Мы будем много говорить о справке в главе 25, а сейчас хотим лишь заметить, что это меню должно содержать самые разнообразные инструменты, помогающие людям освоить ваше приложение. В частности, в большинстве меню Справка явно не хватает пункта Клавиатурные сокращения, объясняющего, как ликвидировать зависимость от меню. Здесь же можно сослаться на более мощные идиомы, такие как кнопки быстрого доступа, кнопки панели инструментов и идиомы непосредственного манипулирования.

Необязательные меню

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

Вид

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

Вставка

Меню Вставка позволяет добавлять новые объекты в документ. В тек' стовом редакторе речь может идти, например, о вставке таблиц, гра'

фиков и символов. В музыкальном секвенсоре – о новых инструмен' тах, эффектах, смене тональности.

Настройка

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

Формат

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

Пункт Параметры страницы, который обычно находится в меню Файл, сле' дует помещать в это меню. (Обратите внимание: «параметры страни' цы» – это далеко не то же самое, что «параметры печати».)

Сервис

Меню Сервис, которое иногда носит менее понятное название Парамет' ры, является местом, откуда вызываются большие и мощные функ' ции. Такие функции, как проверка правописания и средства расши' ренного поиска, считаются сервисными средствами. Кроме того, меню Сервис – это место, где должны размещаться пункты, отвечающие за выполнение потенциально опасных действий.

Потенциально опасные действия– это функции, которые должны вы' зываться только опытными пользователями. К ним относятся различ' ные расширенные настройки. Например, допустим, что клиент'сервер' ное приложение, работающее с базой данных, предоставляет удобные в работе идиомы непосредственного манипулирования для построения запросов к базе данных, за кулисами составляя соответствующие предложения на языке SQL. Возможность прямого редактирования SQL'запроса определенно является потенциально опасной функцией! Функции такого рода могут приводить к непредсказуемым последст' виям или к нарушениям в работе программы, и по этой причине они визуально должны быть отделены от более мирных функций. Другой возможный подход – разместить эти функции в меню Эксперт, справа

от мирного меню Сервис. Так сделала Apple в iPhoto, хотя о корректно' сти размещения конкретных функций в этом приложении можно по' спорить.

Идиомы меню

За годы существования простые меню обросли новыми и более слож' ными поведенческими идиомами. Некоторые из них находят практи' ческое применение, другие просто мешают. В этом разделе обсуждают' ся подобные идиомы меню и уместные применения этих идиом.

Каскадные меню

Разновидность раскрывающихся меню, которая позволяет рядом с ос' новным активным меню выводить вторичное меню. Этот механизм на' зывается каскадные меню, или подменю(рис. 22.4), и является край' не неудобным.

Если стандартные раскрывающиеся меню дают ясный и простой спо' соб навигации по моноклинальным группам, каскадные меню перено' сят нас в опасную область уровней и иерархий. Многоуровневые под' меню не только затрудняют запоминание расположения пунктов, но также требуют более высокой точности перемещения указателя мы' ши. (Если проследить путь, необходимый для выбора пункта в много'

 
  Стандартные меню для приложений рабочего стола - student2.ru

Рис. 22.4. Этот пример каскадного меню взят из Microsoft Word 2003. Каскадные меню затрудняют поиск и просмотр команд, однако позволяют держать гораздо больше команд внутри групп

уровневом каскадном меню, таком как меню Пуск системы Windows, вы заметите, что это буквально путь в лабиринте.)

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

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

Адаптивные меню

В Microsoft Office 2000 появились адаптивные меню, которые отобра' жают только пункты, наиболее часто используемые конкретным поль' зователем (рис. 22.5). Эта идиома по умолчанию была включена в па' кетах Office 2000 и 2003, однако Office 2007 отступил от этой идеи (как и от меню вообще), введя так называемую ленту (ribbon bar), ко' торую мы обсудим далее и в главе 23.

Адаптивные меню были попыткой Microsoft сделать продукты более простыми с виду, скрыв функции, которые пользователю никогда не

 
  Стандартные меню для приложений рабочего стола - student2.ru

Рис. 22.5. Эти изображения демонстрируют работу адаптивных меню PowerPoint 2003. Слева – меню в своем обычном состоянии, оно содержит подмножество наиболее часто выполняемых команд. По центру – меню с курсором, наведенным на кнопку раскрытия. Справа – результат нажатия на кнопку

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

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

Следует отметить, что юзабилити'исследования поддерживают нашу оценку. В исследовании 1989 года респонденты тратили значительно больше времени на решение задач посредством адаптивных меню, чем посредством статических, и 81% участников заявили, что предпочита' ют именно статические меню (Mitchell and Shniederman, 1989). Хотим сразу же предостеречь читателей: из результатов исследования не сле' дует делать вывод, что пользователям никогда не будут по душе адап' тивные интерфейсы. Скорее, разумно будет предположить, что в дан' ном конкретном случае адаптивность просто противоречила назначе' нию меню.

Лента

В пакете Office 2007 компания Microsoft представила новый команд' ный элемент управления – ленту. Это расположенная у верхней грани' цы окна панель с вкладками, сочетающая в единой структуре меню и панели инструментов (рис. 22.6). Идея ленты заключается в сочета' нии визуально выразительных свойств кнопок инструментальных па' нелей с подробным, более понятным и полным отображением функ' циональности, присущим системе меню.

В отличие от адаптивных меню лента, похоже, проектировалась с уче' том сильных сторон как меню, так и панелей инструментов. Как и в слу' чае меню, просмотр вкладок ленты обеспечивает хороший обзор воз'

 
  Стандартные меню для приложений рабочего стола - student2.ru

Рис. 22.6. На рисунке представлена лента программы Microsoft PowerPoint 2007. Эта новая интерфейсная идиома сочетает иерархическую организацию системы меню с более прямолинейным и наглядным представлением, присущим панели инструментов

можностей приложения (хотя визуальная насыщенность и вертикаль' ная организация ряда элементов несколько замедляют такое сканиро' вание). Подобно обычной панели инструментов, лента предоставляет достаточно прямой и наглядный доступ к функциям, хотя пользовате' лю иногда приходится переключаться между вкладками, чтобы найти нужную кнопку. В некоторой степени его жизнь облегчает тот факт, что непосредственно рядом с выбранным объектом в рабочей области документа присутствует контекстная панель инструментов (более под' робно читайте в главе 23), и вкладки автоматически сменяются, пре' доставляя доступ к нужным инструментам. Идиома ленты привлека' тельна и интересна, однако похоже, что в первых версиях Office 2007 она не до конца раскрыта. Поработав немного с этим пакетом, мы об' наружили, что постоянно охотимся за востребованными функциями. Возможно, ситуация улучшится: на момент написания этого текста пакету Office 2007 было всего шесть месяцев от роду.

Меню моментального действия

На заре существования платформ Mac и Windows в некоторых про' граммах встречалась разновидность меню, которая по вполне понят' ным причинам вышла из употребления: мгновенное меню, или меню с восклицательным знаком(bang menu). На жаргоне программистов слово bangозначает «восклицательный знак», и, согласно устоявше' муся соглашению, название мгновенного меню верхнего уровня содер' жало восклицательный знак.

Как следует из названия, это обычный заголовок меню верхнего уров' ня; он располагается в строке меню рядом с другими заголовками ме' ню, но ведет себя как пункт меню. Вместо того чтобы отображать рас' крывающееся меню для последующего выбора, меню с восклицатель' ным знаком немедленно выполняет свою функцию по щелчку мыши! Например, меню мгновенного действия, выполняющее печать, могло называться Печать!.

Такое поведение настолько неожиданно, что сразу же дезориентирует пользователя, а иногда и злит его. Заголовок меню с восклицательным знаком не имеет практически никакой педагогической ценности (раз' ве что в качестве шоковой терапии). Такое меню только приводит пользователя в замешательство. А вот аналогичное незамедлительное действие кнопки на инструментальной панели никого не беспокоит. Разница в том, что кнопки'значки на панели инструментов подразуме' вают немедленное исполнение функции, потому что воспринимаются как командные элементы управления. Это классический пример того, как отход от стандартов и соглашений без достаточных причин спосо' бен создать значительное когнитивное сопротивление. Команды мгно' венного действия должны располагаться на панелях инструментов.

Заблокированные пункты меню

Важное соглашение, касающееся меню, требует, чтобы пункты, недос' тупные в определенный момент времени или не имеющие отношения к работе с выбранным объектом, становились заблокированными. За' блокированное состояние обычно кодируется с помощью осветления текста пункта меню. Это полезная и ожидаемая идиома – она способст' вует выполнению обучающей функции меню, поскольку пользовате' лям становится проще понимать, в каких контекстах бывают доступ' ны те или иные команды.

Стандартные меню для приложений рабочего стола - student2.ru Блокируйте пункты меню всегда, когда их функции теряют смысл.

Наши рекомендации