взгляды на интерфейсы
24 04 2007
http://behrk.livejournal.com/368836.html
Мои взгляды на интерфейсы (типа 50 тезисов)
...Дело было так: жил да был у меня в кармане набор заметок и {ээээ} паттернов. Рос он, рос, пока не превратился в огромную неудобочитаемую вики. После двухлетних (!!!) попыток привести эту вики в пригодный для публикации вид, я сломался, и написал по ней тезисы (примерно по одному тезису на каждую удачную страницу).
[здесь длинный список благодарностей, в котором фигурируют едва ли не все, кому этот текст может попасться на глаза]
[здесь просьба нещадно комментировать и обещание по результатам обсуждения выпустить следующую версию]
Общие принципы
0. Эти тезисы применимы не всегда и не везде. Нет серебряной пули. Люди разные (и их разнообразие невозможно свести к формальной модели)
1. Вещи (программы, системы, инструменты) должны, по возможности, "просто работать" (just works). В идеале это, например, когда два предмета положенных рядом сами начинают правильно взаимодействовать
2. Средства не должны отвлекать на себя внимание. Программы и гаджеты нужны для того, чтобы работать или развлекаться. Когда я второпях записываю номера нескольких человек (поезд уже отходит!), меня не интересуют внутренние сложности моего КПК. Он мне нужен в качестве тупой записной книжки, здесь и сейчас.
3. Ничто не должно выбивать из ритма. Рабочий настрой священен. Сообщения о том, что наконец-то можно скачать улучшенные темы рабочего стола должны подождать. Фактически, это возражение против излишней многозадачности интерфейса (но не против многозадачных ОС, разумеется!)
4. Данные должны быть в надежном месте. Я должен быть уверен, что ни бита не исчезнет без моего позволения.
4.1 В частности, не должна продалбываться неявно введенная информация. Например, выбор 20 файлов из 100 -- это больше 100 бит информации, а большинство современных систем необратимо забывают выделение. Это ли не безобразие?
4.2 Информация не должна удаляться неявно. Например, Picasa удаляет метаданные, если теряет файл из виду (даже если файл просто переложили в другое место). Это ли не хамство?
5. Все действия должны быть обратимыми. Ну, или практически все.
Мои взгляды на интерфейсы (типа 50 тезисов)
...Дело было так: жил да был у меня в кармане набор заметок и {ээээ} паттернов. Рос он, рос, пока не превратился в огромную неудобочитаемую вики. После двухлетних (!!!) попыток привести эту вики в пригодный для публикации вид, я сломался, и написал по ней тезисы (примерно по одному тезису на каждую удачную страницу).
[здесь длинный список благодарностей, в котором фигурируют едва ли не все, кому этот текст может попасться на глаза]
[здесь просьба нещадно комментировать и обещание по результатам обсуждения выпустить следующую версию]
Общие принципы
0. Эти тезисы применимы не всегда и не везде. Нет серебряной пули. Люди разные (и их разнообразие невозможно свести к формальной модели)
1. Вещи (программы, системы, инструменты) должны, по возможности, "просто работать" (just works). В идеале это, например, когда два предмета положенных рядом сами начинают правильно взаимодействовать
2. Средства не должны отвлекать на себя внимание. Программы и гаджеты нужны для того, чтобы работать или развлекаться. Когда я второпях записываю номера нескольких человек (поезд уже отходит!), меня не интересуют внутренние сложности моего КПК. Он мне нужен в качестве тупой записной книжки, здесь и сейчас.
3. Ничто не должно выбивать из ритма. Рабочий настрой священен. Сообщения о том, что наконец-то можно скачать улучшенные темы рабочего стола должны подождать. Фактически, это возражение против излишней многозадачности интерфейса (но не против многозадачных ОС, разумеется!)
4. Данные должны быть в надежном месте. Я должен быть уверен, что ни бита не исчезнет без моего позволения.
4.1 В частности, не должна продалбываться неявно введенная информация. Например, выбор 20 файлов из 100 -- это больше 100 бит информации, а большинство современных систем необратимо забывают выделение. Это ли не безобразие?
4.2 Информация не должна удаляться неявно. Например, Picasa удаляет метаданные, если теряет файл из виду (даже если файл просто переложили в другое место). Это ли не хамство?
5. Все действия должны быть обратимыми. Ну, или практически все.
работают в условиях тряски, на ходу, и т.п. Например, всегда есть риск получить несколько последовательных нажатий там, где имелось в виду одно. Например, кнопка удаления и кнопка подтверждения удаления не должны находиться физически в одном месте экрана (а еще лучше, когда удаление обратимо!)
37. Все должно копироваться. Любой кусок текста на экране. Сообщения, заголовки столбцов в таблицах, элементы списков -- всё. Может быть даже надписи в меню. В этом смысле, кстати, веб-интерфейсы оказались впереди "настольных"
37.1 Представьте себе, как было бы хорошо, если бы формы ввода позволяли скопировать свое содержимое в виде какого-нибудь полуструктурного формата (XML?) и позволяли этот формат можно было бы сохранить, вставить обратно, и т.п
39. Программа должна всегда реагировать. Паузы в работе программы сбивают с ритма и вообще мешают жить. Писать "невиснущие" программы довольно сложно, поэтому разработчики обычно идут на компромиссы, позволяющие упростить архитектуру.
40. Не забывайте: у современных компьютеров есть два основных органа управления -- мышь и клавиатура. Разные люди предпочитают одно или другое. Кроме крайних случаев каждое действие должно быть выполнимым и посредством только мыши, и посредством только клавиатуры. Невозможность сделать что-то, не перенося руку с клавиатуры на мышь (или обратно) очень раздражает.
Рабочая среда
41. Приложение должно при запуске восстанавливаться в том состоянии, в котором с ним в последний раз работали. Тогда состояние приложения превращается в дополнительный полезный механизм напоминания. Посмотрите на PalmOS, там почти все приложения так
Комментарии :
Нет комментариев. »
37. Все должно копироваться. Любой кусок текста на экране. Сообщения, заголовки столбцов в таблицах, элементы списков -- всё. Может быть даже надписи в меню. В этом смысле, кстати, веб-интерфейсы оказались впереди "настольных"
37.1 Представьте себе, как было бы хорошо, если бы формы ввода позволяли скопировать свое содержимое в виде какого-нибудь полуструктурного формата (XML?) и позволяли этот формат можно было бы сохранить, вставить обратно, и т.п
39. Программа должна всегда реагировать. Паузы в работе программы сбивают с ритма и вообще мешают жить. Писать "невиснущие" программы довольно сложно, поэтому разработчики обычно идут на компромиссы, позволяющие упростить архитектуру.
40. Не забывайте: у современных компьютеров есть два основных органа управления -- мышь и клавиатура. Разные люди предпочитают одно или другое. Кроме крайних случаев каждое действие должно быть выполнимым и посредством только мыши, и посредством только клавиатуры. Невозможность сделать что-то, не перенося руку с клавиатуры на мышь (или обратно) очень раздражает.
Рабочая среда
41. Приложение должно при запуске восстанавливаться в том состоянии, в котором с ним в последний раз работали. Тогда состояние приложения превращается в дополнительный полезный механизм напоминания. Посмотрите на PalmOS, там почти все приложения так
Категории : GUI
Обратные ссылки : Нет обратных ссылок »


Обратные ссылки
Нет обратных ссылок