Поделиться через


Реализация пользовательского интерфейса

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

Прототип

Пользовательские интерфейсы должны быть разработаны в списке пользовательских сценариев и требований, которые были определены на шаге анализа пользователей.

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

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

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

Существуют различные средства прототипирования, включая SketchFlow в Microsoft Expression Studio 3, редактор макета в Microsoft Visual Studio и даже Microsoft Paint.

Строить

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

  • Структура команд

    Определите, следует ли реализовать традиционную структуру команд на основе меню и панелей инструментов или альтернативную структуру команд на основе Windows Ribbon Framework. Дополнительные сведения см. в меню, панелях инструментови Windows Ribbon Framework.

  • Окна и диалоговые окна

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

  • Пользовательские элементы управления

    Создайте пользовательские элементы управления только в том случае, если вы не сможете получить функциональные возможности, которые требуется использовать из одного из стандартных элементов управления Windows. Новые пользовательские элементы управления очень затратны для разработки и требуют дополнительной работы, чтобы сделать их доступными. Если приложению требуются пользовательские элементы управления, убедитесь, что они достаточно доступны для вспомогательных технологий. Для получения дополнительной информации см. пользовательские элементы управления и Windows Automation API.

  • Поддержка стандартных устройств ввода пользователей

    Большинство приложений Windows должны поддерживать ввод пользователей с помощью клавиатуры и мыши. Возможность навигации и доступа ко всем функциям приложения с помощью клавиатуры особенно важна для пользователей с нарушениями зрения или проблем с мобильностью. Для получения дополнительной информации смотрите ввод пользователя и Программное обеспечение для доступности eBook.

  • Визуальные стили, анимации и визуальные эффекты

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

Упрощать

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

Сокращение, повторное использование, избавление от лишнего

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

Лучший интерфейс — это отсутствие интерфейса.

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

Меньше пользовательского интерфейса лучше

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

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

  • Замена, а не добавление

    Правило неизменности пользовательского интерфейса гласит, что вы добавляете что-то только тогда, когда можете что-то убрать. Это правило заставляет разработчика критически думать о новой функции, учитывая влияние, которое эта функция оказывает на весь интерфейс пользователя.

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

  • Пользователь является ограниченным ресурсом

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

  • Грубо перебивать

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

  • Простой может быть мощным

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

Согласованный пользовательский интерфейс — хороший пользовательский интерфейс

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

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

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

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

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