Пользовательский интерфейс не то, что может быть применено после факта, как тонкий слой краски. Это то, что должно быть там с самого начала и основано на реальных исследованиях. Конечно, есть множество исследований юзабилити. Оно должно быть не просто на начальном этапе, оно должно составлять ядро самой причины, по которой вы делаете программное обеспечение в первую очередь: в мире есть некоторый пробел, некоторая проблема, и ее необходимо устранить. более удобный и эффективный.
Программное обеспечение не существует ради него самого. Причина существования программного обеспечения - ДЛЯ ЛЮДЕЙ. Абсолютно нелепо даже пытаться придумать идею для новой части программного обеспечения, не понимая, зачем это кому-то нужно. И все же это происходит постоянно.
Прежде чем написать одну строку кода, вы должны просмотреть бумажные версии интерфейса и протестировать их на реальных людях. Это немного странно и глупо, лучше всего работает с детьми, а кто-то развлекается, выступая в роли «компьютера».
Интерфейс должен использовать наши естественные когнитивные возможности. Как пещерный человек будет использовать вашу программу? Например, мы развились, чтобы действительно хорошо отслеживать движущиеся объекты. Вот почему интерфейсы, которые используют физические симуляции, такие как iphone, работают лучше, чем интерфейсы, где изменения происходят мгновенно.
Мы хороши в определенных видах абстракции, но не в других. Как программисты, мы обучены умственной гимнастике и бэкфлипам, чтобы понять некоторые из самых странных абстракций. Например, мы понимаем, что последовательность тайного текста может представлять и преобразовывать в образец электромагнитного состояния на металлическом блюде, который, когда он встречается с тщательно разработанным устройством, приводит к последовательности невидимых событий, которые происходят при скорости света на электронном схема, и эти события могут быть направлены на получение полезного результата. Это невероятно неестественная вещь, которую нужно понимать. Поймите, что, хотя у нас есть совершенно рациональное объяснение для внешнего мира, похоже, мы пишем непостижимые заклинания, чтобы призвать невидимых разумных духов выполнять наши приказы.
Виды абстракций, которые понимают нормальные люди, - это такие вещи, как карты, диаграммы и символы. Остерегайтесь символов, потому что символы - это очень хрупкое человеческое понятие, которое требует сознательных умственных усилий для декодирования, пока символ не выучен.
Уловка с символами состоит в том, что должна быть четкая связь между символом и тем, что он представляет. То, что он представляет, должно быть существительным, и в этом случае символ должен ОЧЕНЬ сильно походить на то, что он представляет. Если символ представляет более абстрактное понятие, это должно быть объяснено в ADVANCE. Посмотрите непостижимые значки без надписей на панели инструментов msword или photoshop и абстрактные концепции, которые они представляют. Нужно учиться, что значок инструмента обрезки в фотошопе означает CROP TOOL. нужно понимать, что вообще значит CROP. Это необходимые условия для правильного использования этого программного обеспечения. Что поднимает важный момент, остерегайтесь предполагаемых знаний.
Мы получаем способность понимать карты только в возрасте около 4 лет. Мне кажется, я где-то читал, что шимпанзе получают способность понимать карты в возрасте от 6 до 7 лет.
Причина, по которой guis были настолько успешными с самого начала, заключается в том, что они изменили ландшафт, состоящий в основном из текстовых интерфейсов с компьютерами, в нечто, сопоставляющее компьютерные концепции с чем-то похожим на физическое место. Где guis терпят неудачу с точки зрения юзабилити, где они перестают напоминать то, что вы видели бы в реальной жизни. В компьютере происходят невидимые, непредсказуемые, непостижимые вещи, которые не похожи ни на что, что вы когда-либо видели в физическом мире. Некоторое из этого необходимо, так как не было бы никакого смысла просто создавать симулятор реальности. Идея состоит в том, чтобы сохранить работу, поэтому здесь должно быть немного волшебства. Но эта магия должна иметь смысл и основываться на абстракции, которую люди хорошо приспособили для понимания. Это когда наши абстракции начинают углубляться и многослойные, и не соответствует поставленной задаче, что вещи ломаются. Другими словами, интерфейс не функционирует как хорошая карта для основного программного обеспечения.
Есть много книг. Два, которые я прочитал, и поэтому могу рекомендовать, это «Дизайн повседневных вещей» Дональда Нормана и «Человеческий интерфейс» Джефа Раскина.
Я также рекомендую курс по психологии. «Дизайн вещей каждого дня» немного говорит об этом. Многие интерфейсы ломаются из-за «народного понимания» психологии разработчиком. Это похоже на «народную физику». Движущийся объект остается в движении, не имеет никакого смысла для большинства людей. «Вы должны продолжать толкать его, чтобы держать его в движении!» думает физика новичок. Пользовательское тестирование не имеет смысла для большинства разработчиков. «Вы можете просто спросить пользователей, чего они хотят, и этого должно быть достаточно!» думает начинающая психология.
Я рекомендую документальную серию PBS «Обнаружение психологии», которую ведет Филипп Зимбардо. В противном случае попробуйте найти хороший учебник по физике. Дорогой вид. Не чушь самопомощи, которую вы можете найти в Borders, а плотный переплет, который вы можете найти только в университетской библиотеке. Это необходимая основа. Вы можете сделать хороший дизайн без него, но у вас будет только интуитивное понимание того, что происходит. Чтение некоторых хороших книг даст вам хорошую перспективу.