Текстовый дизайн интерфейса пользователя
Есть хорошая книга или другие ссылки на текстовый дизайн пользовательского интерфейса? Я не заинтересован в графических пользовательских интерфейсах. Я заинтересован в удобстве использования для хорошей командной строки и скриптовых интерфейсов.
4 ответа
Ваш интерфейс должен следовать правилу наименьшего сюрприза, как описано ESR в статье "Искусство программирования Unix". Если ваша программа поддерживает параметры командной строки, убедитесь, что они имеют традиционное значение. Обязательно прочитайте главу о компромиссах между CLI и визуальными интерфейсами.
IBM разработала стандарт Common User Access. Руководство по разработке базового интерфейса для общего доступа было опубликовано здесь в формате BookManager и в формате HTML.
Руководство было написано как стандарт для разработки 3270 приложений. На мой взгляд, наиболее важными частями являются стандартные функциональные клавиши и стандартные цвета.
Я бы использовал любимую программу в качестве ссылки для чего-то вроде этого. Как вы думаете, какая утилита командной строки имеет хороший, эффективный интерфейс, на котором вы могли бы смоделировать свою программу? Используй это.
Обновление: так что я думаю, что мне нужно немного пересмотреть это. Это было воспринято слишком буквально. Google и этот сайт доказали, что интернет очень демократичен. То, что популярно, тиражируется, связывается или каким-то образом воспроизводится.
Учитывая это, а также личный опыт работы с компьютерами, я думаю, что можно найти довольно хорошее решение, основанное на личном опыте и рассмотрении решения, которое будет предоставлено.
Например, vim - отличная программа. Многие люди используют это и любят это. Но этот тип интерфейса, вероятно, не будет работать (по крайней мере, хорошо) для системы контроля версий. Но оба интерфейса очень элегантны для той цели, для которой они подходят. С другой стороны, интерфейс типа vim может работать для раздела системы управления версиями - например, для диалога фиксации.
Теперь я знаю, что vim обычно используется для "диалога фиксации" (по умолчанию) для svn (в ОС на основе Unix). Это всего лишь пример смешения двух стилей интерфейсов, чтобы придумать целостное решение.
Вы должны взглянуть на некоторые идеи, лежащие в основе Ubiquity, а также на некоторые идеи, о которых говорит Аза Раскин.