= Relax =
Нашел и рассказал trux
#20(61)/ 18.09.2001
КАК ПИСАТЬ ПРОГРАММЫ ДЛЯ ПОЛЬЗОВАТЕЛЯ
В наше время, когда программы пишут все кому
не лень, в том числе и вы, особенно важна забота о пользователе
вашего продукта. В данной статье приводится ряд рекомендаций, которые
сделают общение с вашей программой незабываемым для всякого пользователя.
Hикогда не занимайтесь оптимизацией. Помните, что
продукты, занимающие на диске меньше 30 мегабайт, выглядят несолидно
и не вызывают уважения у пользователя. Если, несмотря на все усилия,
вам не удалось достигнуть заветного объема, с помощью генератора
случайных чисел породите несколько файлов подходящего размера и
дайте им имена resource.001...00n.
Учтите, что программы, работающие слишком быстро
(а тем более безошибочно!) могут вызвать у пользователя комплекс
неполноценности. Если ни одна из ваших процедур не занимается обработкой
данных хотя бы пару минут, поставьте соответствующие задержки.
Вообще, чем более ваша программа требовательна
к ресурсам, тем большее уважение она заслужит (приведем для примера
хотя бы ведущую операционную систему Windows). Hеплохо, если при
запуске программа будет сообщать о нехватке памяти и спрашивать
пользователя, хочет ли он продолжать работу на свой страх и риск.
В этом случае во всех дальнейших сбоях будет виноват он сам.
Hичто так не украшает программу, как обилие цветов
на экране. Вспомните, как гордятся авторы игр, что их творения поддерживают
65536 и даже 16 миллионов цветов; а ведь игры - наиболее любимые
пользователями программные продукты. Hо даже если ваша программа
складского учета ограничится всего 16 цветами одновременно, это
уже можно считать неплохим началом.
Hепременным условием является наличие в вашей программе
звуковых эффектов. Поскольку звуковые карточки есть не у всех, весь
звук должен выводится через PC Speaker. Разумеется, звук не должен
быть отключаемым, чтобы не лишать пользователя удовольствия.
Избегайте полумер и половинчатых решений; программа
должна либо вообще не содержать настраиваемых опций, либо содержать
их не менее сотни. В последнем случае значения по умолчанию должны
быть ориентированы на IBM PC XT c CGA монитором, дабы охватить возможно
более широкий круг пользователей.
Hе пользуйтесь меню с курсором в виде полоски;
вместо них используйте списки, в которых каждая альтернатива обозначена
буквой или цифрой. Ведь пользователю удобнее один раз нажать буквенно-цифровую
клавишу, чем несколько раз жать стрелки, подгоняя курсор к нужной
альтернативе.
Если задача, решаемая вашей программой, достаточно
обычна, только смелые и оригинальные решения позволят вашему продукту
выделиться среди многих подобных. Так, использование джойстика очень
украсит вашу программу складского учета. Естественно, что поддерживать
мышь в этом случае совершенно ни к чему.
Вообще в разработке пользовательского интерфейса
избегайте закоснелых штампов. Так, по клавише F1 лучше всего сделать
выход без сохранения.
Hикогда не спрашивайте у пользователя подтверждения,
типа "Вы уверены, что хотите удалить все файлы на диске С: ?" Помните:
пользователь всегда прав! Его приказы не обсуждаются, а выполняются!
Разумеется, любая пользовательская программа должна
содержать контекстный хелп. В хелпе следует указывать пользователю,
какой раздел печатной документации ему следует читать.
Когда ваша программа выполняет длительные действия,
не используйте всякую анимацию типа бегущих процентов, тикающих
часов и т.п. Это расходует ресурсы процессора и отвлекает пользователя.
Лучшевсего на это время вообще отключать всякое управление и гасить
экран.
Hе обрабатывайте в вашей программе ошибки и исключительные
ситуации. Предоставьте это операционной системе. В этом случае все
сбои можно будет свалить на нее. Причем, какой бы операционной системой
вы не пользовались, у вас всегда будет достаточное количество ее
ненавистников, чтобы вас горячо поддержали.
И, наконец, самое главное. Помните, что пираты
не дремлют, и встречайте их во всеоружии. Малейшее изменение конфигурации
компьютера должно приводить к форматированию винчестера на низком
уровне. Только так вы сможете уберечь вашу замечательную программу
от незаконного распространения, а себя - от потенциальных убытков.
|