Часть III: Документация и инсталлятор
Начнем с того, что документация к shareware-продукту просто необходима. Даже если у программы интуитивно-понятный интерфейс, то все равно обязательно найдутся не "интуитивно понятливые" пользователи. Вспомните инструкции к некоторым приборам, над которыми все так потешаются (например, "в этой микроволновке запрещено сушить кошек после купания"). Вы думаете, что такие советы появляются от тупости составителей инструкций? Нет, всему причина то, что люди разные и по-разному поступают в похожих ситуациях. Подобное предостережение появилось в инструкции к микроволновкам одной компании после того, как одна женщина подала на нее в суд (и выиграла!) за то, что в инструкции, видите ли, не было указано, что кошка после пребывания в микроволновке может, мягко говоря, пересушиться... Вот так и разработчики программ тоже должны указывать: это делается так, а от этого лучше вообще воздержаться, но можете попробовать на свой страх и риск... Представьте, к примеру, что в каком-нибудь дисковом редакторе (Norton Disk Editor) не объясняется, как и кому можно пользоваться такой программой. На разработчика вскоре посыпались бы иски от "юзеров" с потерянной информацией на винчестере.
Конечно, всякие предостережения не являются главным наполнением документации: основное ее предназначение - давать ответы пользователю на возможные вопросы. Ведь, если ваша программа станет популярной (чего вам искренне желаю), то отправлять ежедневно несколько десятков писем с разъяснениями по однообразным вопросам "юзеров" - не самое приятное времяпрепровождение. Ну и, конечно, документация должна очень заманчиво и доходчиво объяснять пользователю, что покупка программы просто необходима для него. В том же разделе пользователь должен найти цену на программу и ссылку для регистрации.
Разумеется, если вы собираетесь продавать программу за пределами СНГ, то вся документация и интерфейс должны быть сделаны на хорошем английском языке.
Теперь рассмотрим ту часть документации, которая именуется "справочной системой". Сейчас распространены два формата help'a: WinHelp и HTML Help. Сравнительный анализ этих форматов:
- HTML Help требует установленного в системе Internet Explorer'a;
- HTML Help требует больше ресурсов, чем WinHelp;
- возможностей у HTML Help больше, чем у WinHelp, но для абсолютного большинства справочных систем функциональности последнего более чем достаточно.
Для начинающего "шареварщика", я думаю, больше подойдет формат WinHelp. Про создание справки в формате WinHelp можно прочитать в статье "Создание справочной системы" ("КВ" №10/2003). А для создания HTML Help понадобится любой HTML-редактор и компилятор (см. msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.asp).
Справочная система должна включать несколько стандартных разделов:
Introducing - знакомство с программой, кратко рассказывает о ее предназначении и достоинствах.
Registration - рассказывает пользователю, как можно зарегистрировать программу и что ему за это будет.
FAQ - часто задаваемые вопросы (желательно с ответами) по работе с программой.
Technical Support - техническая поддержка, т.е. ссылки на информацию о программе, адреса e-mail, на которые пользователь может отправлять свои вопросы и предложения.
Еще один совет: не следует использовать в справке всякие "заумные" термины, ведь документация предназначается для "простых смертных". Но переходить на жаргон тоже не стоит, т.к. это может отрицательно сказаться на рейтинге разработчика в глазах пользователя.
Помимо справочной системы, дистрибутив программы обычно включает в себя еще несколько файлов:
license.txt - должен содержать лицензионное соглашение, т.е. рассказывает, что допускается делать пользователю с программой. Обычно это соглашение показывается при установке программы;
readme.txt - этот файл должен хранить описание программы. Основное его предназначение - дать возможность пользователю перед установкой программы почитать про ее функции;
file_id.diz - кратко рассказывает о программе (название+версия+краткое описание);
history.txt - содержит историю развития программы.
Конечно, для начинающего "шареварщика", тем более, без отличного знания английского, написать все эти файлы самому будет довольно проблематично, поэтому советую поступить как большинство shareware-разработчиков: взять готовые файлы какой-нибудь авторитетной программы и внести в них необходимые изменения.
Ко всему прочему, в раздел "О программе..." ("About...") нужно включить следующие данные: название и версию программы, строку "копирайтов" (что-то вроде Copyright (2000-2003 MySuperCompany All Rights Reserved, где 2000 - год выпуска первой версии программы, 2003 - год выпуска данной версии).
Также нужно сделать и online-документацию, т.е. ту, которую вы поместите на свой сайт. Сайт у вас появится только в следующей статье, а пока считаем, что его нет. В связи с этим делайте локальную версию вашего будущего представительства в интернете. На сайте обязательно должна быть следующая информация: описание программы, FAQ, как зарегистрироваться, техническая поддержка. Разумеется, ссылку на сайт и на регистрацию нужно добавить и в саму программу, но об этом - только в следующей статье...
А теперь настало время сделать инсталлятор к вашему детищу. Для этого можно воспользоваться одной из программ соответствующего направления. Одним из лидеров является InstallShield, но для shareware-продуктов обычно используются другие программы, потому что при создании инсталлятора с помощью InstallShield он занимает намного больше места, чем сами файлы программы. А вот этого "шареварщик", тем более начинающий, себе позволить не может. Так что обратите свой взор на следующие продукты: семейство Wise (www.wisesolutions.com), Installer Vise (www.mindvision.com), CreateInstall (gentee.com), InnoSetup (www.domain.com) + ISTool (www.bhenden.org/istool), NSIS (nsis.sourceforge.net). Про последние две бесплатные программы рассказано в статье "Программа готова. Пора делать инсталлятор" ("КВ" №7/2003). Про использование перечисленных программ рассказывать не буду, не так там все и сложно. Дам лишь несколько советов для создания хорошего инсталлятора:
- Во время инсталляции покажите текст лицензионного соглашения, который вы записали в файл license.txt.
- В качестве папки установки по умолчанию используйте папку Program Files (обычно C:\Program Files).
- Если приходится менять системные настройки, то спросите разрешение у пользователя.
- При установке системных файлов обязательно проверьте, что вы не замените их новые версии на старые.
- Перед перезагрузкой компьютера спросите, можно ли ее совершить.
- У программы обязательно должна быть возможность удобной деинсталляции, т.е. удаления всех следов программы из системы.
Полученному инсталлятору нужно дать какое-нибудь имя, но перед этим мы поговорим о версиях программы. Как правило, версия программы состоит из двух чисел, разделенных точкой:
Мажорная_версия.Минорная_версия
Минорная версия увеличивается при небольших изменениях, мажорная, соответственно, при значительных улучшениях (по мнению автора) программы. Ваша первая версия будет 1.0. Конечно, если вы не уверены в полной работоспособности программы, нужно ее сначала хорошенько протестировать.
Кроме описанного вида нумерации, есть еще несколько, но они меньше распространены. Можно вспомнить, например, что после Windows 3.x вышла версия Windows 95 (так, наверное, солиднее).
Очень неплохо, если версию программы можно будет определить без инсталляции. Для этого назовите инсталлятор примерно так: MyProga10.exe. После этого поместите его вместе с файлами license.txt, readme.txt и file_id.diz в zip-архив, который назовите MyProga.zip, т.е. без версии. Именно этот zip-архив вы будете распространять в интернете, так что если включить в его название и версию программы, то при выпуске следующей версии придется размещать в интернете еще один файл, а многие пользователи будут продолжать "качать" старую версию программы. Без вложения денежных средств данные проблемы решить почти невозможно, а так как мы еще только начинающие "шареварщики", то и с деньгами расставаться пока не будем.
На сегодня все, в следующей статье мы перейдем к самой интересной теме - распространению программы в интернете.
Иван ШИРКО,
[email protected]
Горячие темы