Здравствуйте, Sinclair, Вы писали:
S>Я смотрю, ничто не останавливает любителей спорить с очевидным.
Не думаю что мой спор будет отличаться от вашего, в случае его наличия. Что есть очевидно? Если вы говорите что даже матерый программер с высоким АйК"ю бывает недотягивает или промахивается (хотя то, что он программер или его уровень АйК"ю мне кажется мало говорит о способности владеть мышкой) — то это значит "ДнД
очевидно тяжел", если другой говорит что секретарши тягают лучше матерых программеров — то это напротив не говорит что "ДнД легок". Почему? Или я не понял что вы имели в виду под очевидным?
S>Ок, продолжим. Ваша фраза "ну, не более чем" либо является фигурой речи, либо выдает ваше полное незнакомство с предметом.
Я, видимо так же, как и вы знаком с работами Карда, Новелла и др.
S>Итак, рассмотрим сначала техническую сложность.
S>1. Клик: нужно
(...скип...)
1 — мне это известно
2 — интервал между первым и вторым кликом для распознания как дабл-клик настраиваем. 500 мс — частный случай. Так же как и зона смещения. Вы говорите "Важно правильно выбрать усилие нажатия на кнопку и его направление, чтобы
не сдвинуть мышь." — но мышь сдвигать можно!
3 — добавлю, что при ДнД сложность также выражается расстоянием.
S>Вот представьте, что надо перетащить кнопку офисного тулбара в другой тулбар — внизу. Мы делаем альт-драг и тащим. Если нам не повезло уронить ее над документом, а не над тулбаром — все, труба. Построение списка действий для исправления этой ошибки оставляю в качестве домашнего задания (кстати, офис заботливо сохранит новый вид тулбара в ваших сеттингах.)
Есть Reset to Default. Если не подходит — сами знаете что есть Customize.
S>Кстати, рекомендую еще вспомнить, что далеко не все пользователи проводят за компом 12-14 часов в сутки, как мы. Это все равно как сравнивать водительские навыки таксиста с навыками офисного служащего, который ездит утром туда, а вечером обратно. А некоторые пользователи — просто дачники, которые вообще выезжают раз в неделю, и то только в теплый сезон. Можно ли сказать, что "обратный полицейский разворот" столь же прост, как и обычный поворот с дороги во двор? Для некоторых — да.
Это смотря чем работники занимаются, правда? Вы считаете разработчиков самой тесно связанной с компутером профессией (в плане работы с ГУИ)? Сегодня? Думаю вы согласитесь что дизайнер и инженер с трекболом имеет все шансы догнать и обогнать матерого разработчика.
О чем я хотел сказать: если есть мотивация — пользователь любой осилит это. И даже самый сложный ДнД. Но только если конечно будет знать об этой возможности.
И конечно же есть люди, которые просто не расположены к работе с мышей, точно так же как некоторые не способны освоить вождение, так как теряются в "интерфейсе" машины. Но ведь брать таких людей за нулевую точку отсчета не правильно (при сравнении).
S>Теперь давайте вспомним о том, что техническая сложность наступает только тогда, когда пользователь уже знает, что именно он собирается сделать.
S>Как мы только что обсудили, драг может оказаться очень сложным маневром (а может — и не очень, если а) объект для драга достаточно велик для уверенного подхвата (минимум 32*32), б) таргет-зона очень велика (например, окно експлорера открытое на 50% экрана) и по пути нет мин-ловушек (зон, куда можно бросить, но не стоит)).
S>Это означает, что пользователь не очень захочет пробовать его, не будучи уверен в результате.
Вот именно, читайте выше о мотивации. Если будет уверен что ему это надо — сделает. Очевидно, что если он не владеет такой информацией — оценить нужжно ему это или нет нельзя.
S>Далее, Стивен Круг пишет, что наличие любого выбора для пользователя — зло. Допустим, у нас есть 8 интерфейсных элементов.
(скип)
S>В любом случае у него есть универсальный способ узнать, что и как можно сделать с объектом, без экспериментов.
Согласен: понимание работы системы (ментальная модель), метафоры, подсказки, следование стандартам.
S>Итак, как правило человеку достаточно выбрать среди 8 объектов, а затем (иногда) еще и среди ~10 глаголов.
S>Предположим, теперь у нас какое-то из действий скрыто за драг-н-дропом.
S>Теперь пользователю нужно
S>- догадаться, что действие может потребовать двух объектов из тех, которые он видит,
S>- выбрать эту пару из 64 вариантов
S>- проверить свои предположения
... или не догадываться, а знать это.
S>Никакого способа намекнуть пользователю, что объект А можно бросить на объект B, пока не изобретено. Все! Труба!
Вспомним Корзину на Рабочем столе, сам Рабочий стол с документами... Или это не то?
S>Еще раз подчеркиваю, что вся история современного GUI — это попытки выработать язык намеков, достаточный для того, чтобы человек мог читать UI. Мы достигли большого успеха — настолько большого, что продвинутые пользователи вроде нас с вами считают абсолютно естественными свои знания того, что и как работает. Это, кстати, тоже заблуждение. Большинство продвинутых пользователей наизусть знают только наиболее часто выполняемые из своих действий. Это становится видно, если попросить любого из нас рассказать, как сделать что-то мало-мальски нетипичное, не загядывая при этом в компьютер. Мы получаем 90% информации интерактивно, читая экран.
S>Это означает, что шансов построить вменяемый UI без такой обратной связи практически нет.
S>Итак, успешное взаимодействие с компьтером критическим образом зависит от трех возможностей:
S>- понять, что можно сделать, безо всякого взаимодействия (узнаваемые образы операбельных объектов и элементов управления)
S>- убедиться, что правильно понял, путем предварительного необязывающего взаимодействия:
S>-- наведение мышкой: hover-эффекты и хинты
S>-- левый клик: выделение выделимого объекта
S>-- правый клик: показ меню с доступными действиями
S>- легко отменить выполненное действие в случае ошибки (Ctrl-Z).
S>В большинстве случаев разработчикам вообще не надо об этом задумываться, потому что столь низкоуровневые вещи просто вшиты в используемые библиотеки. Но даже при выборе способа построения GUI из готовых элементов про это стоит знать.
S>Идиома drag-n-drop имеет огромные проблемы с первым пунктом, и существенные со вторым.
Т.е. дабл-клике более узнаваем "
безо всякого взаимодействия" чем ДнД
S>Самое важное — это отмена. Именно потому, что действие технически сложно (а значит будет сопровождаться повышенным количеством ошибок), и слабоинтуитивно (значит велик риск того, что пользователь имел в виду вовсе не то, что выполнила программа).
Имхо, интуитивны человеку совсем другие вещи, никак не дабл-клики и ДнД...
И наконец, по поводу жестов: вы писали выше "Жесты второй проблемы лишены" имея в виду судя по этому
2. являясь по сути аналогом горячих клавиш, они при этом более сложны как по запоминанию так и по воспроизведению (что логично, т.к. мышь менее выразительна чем клавиатура).
легкость воспроизведения: "Одно дело — попасть в кнопочку 16*16, да еще и при клике не сдвинуть мышу, а другое — надавив кнопку дернуть вправо-влево".
Так вот: по аналогии с ДНД нужно ведь точе зажать кнопку мыши, и движения должны быть более выверены и точны чем в случае с ДнД. Второе. как и в случае ДнД (ошибка при дропе) ошибка в траектории — те же последствия, а может и хуже, так как может быть сложно проследить как же распознался ваш жест и что сделала программа.
Мне интересна эта тема. Жесты имеют право жить. Как и все остальные способы. Я в частности занимался исследованием внедрения управления жестами в layout-дизайнеры...
Never underestimate those behind you...