О «стабильности» интерфейсов

Что выдает компьютер в телефоне?

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

Довольно долго я ничего тут не писал, все обдумывал, как же написать про эту самую «стабильность», но так ничего путного и не надумал: придется писать как есть :)

Как вы думаете, как мне удалось догадаться, что сотовый телефон, работающий под управлением Windows Mobile 6.5 на самом деле является компьютером? На первый взгляд мой телефон ведет себя вполне обычно, как реальный, физический объект. Но есть детали, которые сразу выдают компьютер, и об этом далее.

1. Плавность движения

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

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

2. Отрисовка по частям

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

Ощущение компьютерности снова появляется тогда, когда я замечаю, как программа медленно и последовательно рисует что-то на экране. В природе такого не бывает. Если у меня есть, скажем, пульт управления ракетой с кнопками и ручками, то я его либо вижу, либо не вижу. Предположим, пульт изначально находится в чехле. Для программы это означает, что окно с настройками закрыто. Я допускаю, что расчехление пульта (открывание окна) может занять определенное время, и я готов чуть-чуть подождать. Но когда пульт расчехлен, то я вижу его, и я знаю, что он весь существует. Он является для меня физическим объектом, который можно потрогать. Физический объект «стабилен»: он либо есть, либо его нет. Что же бывает на компьютере? Некоторые окна заметно мерцают при открытии или каком-то изменении, а также перерисовываются частями. Получается, что какие-то части пульта видны, а другие отсутствуют на том месте, где я должен их видеть. И потом вдруг они проявляются...

3. Прокрутка и полосы прокрутки

Я решил отнести к «нестабильности» и плохо реализованную прокрутку не помещающегося на экране изображения или текста. С самой прокруткой бывает, в основном, одна беда: при плавном перемещении (полосой прокрутки или инструментом «рука») изображение мерцает. А теперь представьте себе бумажную книгу, которая мерцает когда вы смещаете ее на столе перед носом. Бумажная книга мерцает, значит, она да долю секунды пропадает со стола, а потом каждый раз появляется снова. Кстати, в следующий миг книга может оказаться частично внутри ладони. Удобно.

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

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

Заключение

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

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

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

См. также: Телефоны морочат людям голову


Electriq Monday 20 June 2011 at 12:17 am | | Russian

No comments

(optional field)
(optional field)
Remember personal info?
Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.