Важные функции пользовательского интерфейса, которые часто не учитываются

Я действительно хочу знать, упускаю ли я что-нибудь очевидное в программном обеспечении, которое я разрабатываю.

Какие функции пользовательского интерфейса, которые вы считаете важными, часто отсутствуют в большинстве программ?

24 ответа

Решение

Вот некоторые из функций пользовательского интерфейса, которые я часто нахожу плохими или даже отсутствующими:

  • Восстановление состояния окна правильно.
  • Соответствует ментальной модели среднего (не начинающего, не экспертного) пользователя.
  • Ограничение количества вариантов, которые должен сделать пользователь.
  • Ограничение количества, которое пользователи должны прочитать при использовании приложения.
  • Сильная согласованность с другими приложениями того же жанра, работающими на той же платформе.
  • Хорошо сделанный Undo / Restore средство.
  • Как заметил кто-то еще, контекстно-зависимая помощь.
  • Возможность навигации по приложению без помощи мыши.
  • Хорошая поддержка нескольких мониторов.

Отмена является стервозным кодом, но очень полезна для конечных пользователей.

Сохраните расположение и размер всех / любых окон, чтобы они восстанавливались при каждом перезапуске программы.

Прочтите эту статью об отмене от эксперта по юзабилити (Аза Раскин): Никогда не используйте предупреждение, когда вы имеете в виду отмену. Кодирование отменить не так уж сложно: примеры [1], [1.5], [2].

Горячие клавиши

Что обычно не учитывается в пользовательском интерфейсе? Ничего такого! (буквально. пустое место). Лучше задать вопрос "Что можно вынуть?". Когда вам нужно подумать о том, что еще нужно вашему пользовательскому интерфейсу, вы уже зашли слишком далеко. Оставить пустое место - это то, над чем должны работать программисты пользовательского интерфейса. Никто не любит ползучий характер.

введите описание изображения здесь

Помните правило KISS.

  • Справочное меню с более чем О...
  • Контекстная помощь
  • Подсказки

API и язык сценариев, чтобы я мог обойти пользовательский интерфейс.

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

Щелкните правой кнопкой мыши контекстное меню на таких вещах, как древовидные представления и сетки.

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

  1. Согласованность вашего дизайна... Слишком много приложений, которые "выглядят" так, как их написал программист. Я не могу подчеркнуть достаточно!
  2. Автоматизация... Офис есть, я бы хотел, чтобы больше приложений.
  3. CLI... Как уже упоминалось выше, особенно если это повторяющийся процесс типа мастера
  4. Шаблоны / пресеты... как Handbrake... делают жизнь проще, не говоря уже о удобстве в процессе обучения
  5. Сообщения об ошибках / подтверждениях, которые не мешают... Если пользователю не нужно предпринять немедленные действия, не отображать диалоговое окно. Если ошибка очевидна, исправьте ее для меня, а затем скажите мне, почему
  6. Масштабируемый интерфейс. С WPF это становится проще, но это раздражает, если я на большом мониторе и мне приходится щуриться, чтобы что-то увидеть. Не говоря уже о точности моего клика, это не так уж и здорово.

Согласованность пользовательского интерфейса.

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

  • перетащить
  • буфер обмена

Я сам добавлю несколько, которые еще не были упомянуты:

  1. Немодальные формы, которые могут оставаться открытыми, пока выполняется другая работа.

  2. Возможность одновременного просмотра нескольких окон (вместо вкладок, которые показывают только по одному за раз)

  3. Возможность иметь несколько видов одного окна одновременно, то есть режим разделения, или панели, или фактические несколько окон в одном объекте.

Хороший дизайн.

Оставьте место в своих диалогах, чтобы, если вы его интернационализировали, у вас было место для более длинных слов (например, итальянского) и больших шрифтов (например, китайского).

Фактическое внимание к пользователю, кажется, не учитывается довольно часто:

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

Чистые иконки. Хорошие иконки. Значимые значки.

Я очень разочарован большим количеством иконок внутри приложений - особенно в Windows;-)

Чисто и интуитивно понятно.

  1. Замораживание приложения, когда оно делает что-то, что занимает больше секунды.

  2. Не показывать пользователям, что происходит, и не указывать, сколько времени это займет.

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

IMO, имя пользователя и пароль, параметры входа должны работать. Я понимаю, что есть проблемы безопасности с каждым из этих вариантов. Компенсация риска различна для каждого приложения и должна оцениваться для каждого приложения отдельно.

Часто забытые или плохо реализованные функции включают в себя:

  • Запомни меня
  • Забыли пароль
    • Если у вас ограниченная политика паролей, дайте мне подсказку, что это такое!
    • Диапазон для количества символов, без специальных символов, требуемых цифр или букв капитала и т. Д.
  • Забыл имя пользователя
    • Если мое имя пользователя не является моим адресом электронной почты, дайте мне подсказку к вашей политике имени пользователя

Перемещение по ссылкам и полям с помощью кнопки вкладки.

Вроде слишком общий вопрос. Это будет зависеть от того, что делает приложение. Одна вещь, которую я часто не вижу в приложениях графического интерфейса, - это простой способ исправлять ошибки не только в объекте, которым вы манипулируете, но и в элементах пользовательского интерфейса программы. Закрытие некоторых плавающих панелей опций или панели инструментов по ошибке и отсутствие представления о том, где эта функция включена, разочаровывает меня до бесконечности. Это под виндой? Или под View? Это был этот? нет, это один для чего-то другого полностью. Г! Как это называется?

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

Окна, которые привязываются к другим окнам и скринбордерам. KDE и Winamp делают это, и являются самыми известными для этого. Почему целый ряд других приложений и DE не делают этого?

Другие вопросы по тегам