Лучшие практики и Принципы для [закрытого] дизайна GUI

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

См. также: A хороший список лучших практик

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

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

63
задан 15 revs, 6 users 56% 10 November 2018 в 19:10
поделиться

16 ответов

Попытайтесь использовать глаголы в своих диалоговых окнах.

Это означает использование

alt text

вместо

alt text

53
ответ дан MattH 24 November 2019 в 16:05
поделиться

Быть Мощным и Простой

, О, и нанять разработчика / изучают навыки проектирования.:)

0
ответ дан Nidonocu 24 November 2019 в 16:05
поделиться

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

1
ответ дан Peter Mortensen 24 November 2019 в 16:05
поделиться

(Украденный от Joel: o))

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

1
ответ дан slashmais 24 November 2019 в 16:05
поделиться

Дизайн Повседневных Вещей - Donald Norman

канон А сведений дизайна и основание многих курсов HCI в университетах во всем мире. Вы не разработаете большой GUI через пять минут с несколькими комментариями от веб-форума, но некоторые принципы доберутся, Ваши взгляды указали правильный путь.

-

MC

2
ответ дан 24 November 2019 в 16:05
поделиться

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

3
ответ дан Kramii Reinstate Monica 24 November 2019 в 16:05
поделиться

Я рекомендовал бы получить хорошее основательное понимание дизайна GUI путем чтения книги Дизайн Повседневных Вещей . Хотя печатаемое основное является комментарием от Joel Spolsky : Когда поведение приложения отличается к тому, что пользователь ожидает происходить тогда, у Вас есть проблема с Вашим графическим интерфейсом пользователя.

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

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

6
ответ дан Peter Mortensen 24 November 2019 в 16:05
поделиться

Я пытаюсь адаптироваться к среде.

При разработке для Приложения Windows, я использую Пользовательские Инструкции по Опыту Windows Vista , но когда я разрабатываю веб-приложение, я использую соответствующие инструкции, потому что я разрабатываю голландские веб-сайты, которые я использую инструкции "Drempelvrij" , которые основаны Инструкции по Доступности веб-контента (WCAG 1.0) Консорциумом World Wide Web (W3C).

причина я делаю это должно уменьшить кривую обучения нового пользователя.

6
ответ дан Davy Landman 24 November 2019 в 16:05
поделиться

Навигационные цепочки в веб-приложениях:
Говорят->-> Пользователь->, Где-> Она-> Находится в системе

, Это довольно трудно сделать в "динамических" системах с разнообразными путями к тем же данным, но это часто помогает переместиться по системе.

7
ответ дан kosoant 24 November 2019 в 16:05
поделиться

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

не заставляют меня думать - Steve Krug

8
ответ дан Ali Parr 24 November 2019 в 16:05
поделиться

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

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

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

11
ответ дан Jorge Córdoba 24 November 2019 в 16:05
поделиться

Никогда не просят, чтобы "Действительно ли Вы были уверены?". Просто позвольте неограниченную, надежную отмену/восстановление.

25
ответ дан Jörg W Mittag 24 November 2019 в 16:05
поделиться

Следуйте за принципами базовой конструкции

  • , Contrast - Делает вещи, которые являются отличающиеся взгляд отличающийся
  • интернет-петиция R - Повторение тот же стиль на экране и для других экранов
  • А lignment - элементы Линейного растра! Да, это включает текст, изображения, средства управления и маркировки.
  • Proximity - связанные с группой элементы вместе. Ряд полей ввода для ввода адреса должен группироваться и быть отличен от группы полей ввода для ввода информации о кредитной карте. Это основное Законы .
  • о Дизайне Гештальта
26
ответ дан Craig Pickering 24 November 2019 в 16:05
поделиться

Постарайтесь не просить, чтобы пользователь сделал выбор каждый раз, когда Вы можете (т.е. не создавать ветвление с диалоговым окном конфигурации!)

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

  • имеет смысл?
  • не стоит на пути?
  • достаточно легко узнать, что это стоит малого пользователю, что я налагаю это на него?

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

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

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

3
ответ дан Carl Seleborg 24 November 2019 в 16:05
поделиться

При создании сообщений об ошибках сделать сообщение об ошибке ответы на эти 3 вопроса (в указанном порядке):

  1. Что случилось?

  2. Почему это произошло?

  3. Что можно с этим сделать?

Это из «Руководства по человеческому интерфейсу: рабочий стол Apple Интерфейс »(1987, ISBN 0-201-17753-6), но его можно использовать для любого сообщения об ошибке где угодно. Существует обновленная версия для Mac OS X. Страница Microsoft Сообщения пользовательского интерфейса говорит то же самое: "... в случае сообщения об ошибке, вы должны указать проблему, причину и действие пользователя для устранения проблемы ».

Также включите любую информацию, известную программе, не просто фиксированная строка. Например, для части сообщения об ошибке «Почему это произошло» используйте «Необработанный файл спектра. L: \ refDataForMascotParser \ TripleEncoding \ Q1LCMS190203_01Doub leArg.wiff не существует ", а не просто" Файл существует не существует ".

Сравните это с печально известным сообщением об ошибке:" Ошибка случилось ».

2
ответ дан 24 November 2019 в 16:05
поделиться

Я тестирую свой графический интерфейс на примере бабушки.

54
ответ дан 24 November 2019 в 16:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: