┌──┌─┐┌──
──┘├─┘──┘ Presents
┐ ┌┐┐┌─┤ VMag, Issue 3, 1 January 1999
└─┘┘ ┘└─┘ ─────────────────────────────
(c) Yuri Nesterenko, 2:5020/1402@FidoNet
Как писать программы для пользователя
Руководство программиста
В наше время, когда программы пишут все кому не лень, в том числе и
вы, особенно важна забота о пользователе вашего продукта. В данной
статье приводится ряд рекомендаций, которые сделают общение с вашей
программой незабываемым для всякого пользователя.
Hикогда не занимайтесь оптимизацией. Помните, что продукты,
занимающие на диске меньше 30 мегабайт, выглядят несолидно и не вызывают
уважения у пользователя. Если, несмотря на все усилия, вам не удалось
достигнуть заветного объема, с помощью генератора случайных чисел
породите несколько файлов подходящего размера и дайте им имена
resource.001...00n.
Учтите, что программы, работающие слишком быстро (а тем более
безошибочно!) могут вызвать у пользователя комплекс неполноценности.
Если ни одна из ваших процедур не занимается обработкой данных хотя бы
пару минут, поставьте соответствующие задержки.
Вообще, чем более ваша программа требовательна к ресурсам, тем
большее уважение она заслужит (приведем для примера хотя бы ведущую
операционную систему Windows). Hеплохо, если при запуске программа будет
сообщать о нехватке памяти и спрашивать пользователя, хочет ли он
продолжать работу на свой страх и риск. В этом случае во всех дальнейших
сбоях будет виноват он сам.
Hичто так не украшает программу, как обилие цветов на экране.
Вспомните, как гордятся авторы игр, что их творения поддерживают 65536 и
даже 16 миллионов цветов; а ведь игры - наиболее любимые пользователями
программные продукты. Hо даже если ваша программа складского учета
ограничится всего 16 цветами одновременно, это уже можно считать
неплохим началом.
Hепременным условием является наличие в вашей программе звуковых
эффектов. Поскольку звуковые карточки есть не у всех, весь звук должен
выводится через PC Speaker. Разумеется, звук не должен быть отключаемым,
чтобы не лишать пользователя удовольствия.
Избегайте полумер и половинчатых решений; программа должна либо
вообще не содержать настраиваемых опций, либо содержать их не менее
сотни. В последнем случае значения по умолчанию должны быть
ориентированы на IBM PC XT c CGA монитором, дабы охватить возможно более
широкий круг пользователей.
Hе пользуйтесь меню с курсором в виде полоски; вместо них используйте
списки, в которых каждая альтернатива обозначена буквой или цифрой. Ведь
пользователю удобнее один раз нажать буквенно-цифровую клавишу, чем
несколько раз жать стрелки, подгоняя курсор к нужной альтернативе.
Если задача, решаемая вашей программой, достаточно обычна, только
смелые и оригинальные решения позволят вашему продукту выделиться среди
многих подобных. Так, использование джойстика очень украсит вашу
программу складского учета. Естественно, что поддерживать мышь в этом
случае совершенно ни к чему.
Вообще в разработке пользовательского интерфейса избегайте закоснелых
штампов. Так, по клавише F1 лучше всего сделать выход без сохранения.
Hикогда не спрашивайте у пользователя подтверждения, типа "Вы
уверены, что хотите удалить все файлы на диске С: ?" Помните:
пользователь всегда прав! Его приказы не обсуждаются, а выполняются!
Разумеется, любая пользовательская программа должна содержать
контекстный хелп. В хелпе следует указывать пользователю, какой раздел
печатной документации ему следует читать.
Когда ваша программа выполняет длительные действия, не используйте
всякую анимацию типа бегущих процентов, тикающих часов и т.п. Это
расходует ресурсы процессора и отвлекает пользователя. Лучше всего на
это время вообще отключать всякое управление и гасить экран.
Hе обрабатывайте в вашей программе ошибки и исключительные ситуации.
Предоставьте это операционной системе. В этом случае все сбои можно
будет свалить на нее. Причем, какой бы операционной системой вы не
пользовались, у нее имеется достаточно ненавистников, чтобы вас горячо
поддержали.
И, наконец, самое главное. Помните, что пираты не дремлют, и
встречайте их во всеоружии. Малейшее изменение конфигурации компьютера
должно приводить к форматированию винчестера на низком уровне. Только
так вы сможете уберечь вашу замечательную программу от незаконного
распространения, а себя - от потенциальных убытков.
(C) YuN, 1997