| . |
Эта книга сначала была написана для FoxPro 2.0. В январе 1993 года Microsoft выпустила версию
2.5. При всем моем уважении к версии для DOS следует сказать, что новая
версия не имела особых новшеств. Действительно большим шагом был выпуск
FoxPro for Windows.
Я собирался написать книгу для тех, кто программирует в FoxPro for Windows или переписать
эту книгу с использованием программ, работающих под Windows, но потом передумал.
Книга, которую вы сейчас держите в руках, в значительной степени повторяет
ранее вышедшую FoxPro 2.0 Applications Programming за исключением исправленных
ошибок и новой главы.
FoxPro for Windows - замечательный продукт и вполне может стать продуктом будущего.
Однако, не могу сказать является ли он продуктом сегодняшнего дня. Мой
консалтинговый бизнес идет весьма успешно, и до сих пор ни один из моих
клиентов не попросил приложения, работающего под Windows. Ни один.
Я издаю The Pinter FoxPro Letter - ежемесячный журнал, посвященный программированию
на FoxPro. Довольно часто я задаю своим подписчикам вопрос о том какую
платформу они собираются использовать, и только около 10% моих читателей
действительно используют FoxPro for Windows. Гораздо большее число купили
продукт, установили его на компьютер и попробовали. Некоторые перевели
свои приложения под Windows для сравнения. Тем не менее они не используют
Windows в реальных разработках. То ли их заказчики не просят о таких приложениях,
то ли они смогли разубедить заказчиков, не знаю. Факт тот, что подавляющее
число разработок делается в FoxPro for DOS.
Будет ли число разработок, созданных под Windows увеличиваться? Непременно. Windows предоставляет
колоссальные возможности. Чтобы не ходить далеко упомяну хотя бы поддержку
принтеров.
Так почему же не переписать эту книгу для FoxPro for Windows? Тому есть несколько
причин. Во-первых, соотношение 10:1 в числе разработок для DOS и Windows.
Во-вторых, срок разработки приложений под Windows больше по сравнению с
разработками под DOS. Переход от редактора текстов к Конструктору Экранов,
затем к Менеджеру Проектов и снова к редактору выполняется медленнее. Программисты
обычно переходят к новому инструменту в том случае, когда он предлагает
повышение производительности. Нам нужно приучить заказчиков к мысли о том,
что им придется больше платить за проекты, которые создаются медленнее.
В-третьих, пользователь ожидает, что приложение, созданное для работы под
Windows, будет вести себя также как сама среда, что означает требование
к созданию событийно-управляемых приложений. То есть вы размещаете на экране
несколько окон, щелкаете мышью на любом из них, и при этом окно активизируется,
и его код вступает в работу. Методика создания событийно-управляемых приложений
хотя и хорошо документирована (только в моем журнале вы сможете найти четыре
статьи, предлагающие четыре самостоятельных подхода), но более сложна и
стоит дороже. И наконец, графический интерфейс требует особо тщательной
проработки, и в результате время на создание привлекательного экрана может
съесть весь бюджет.
Внутренний голос говорит мне, что хорошее приложение для Windows должно стоить по
меньшей мере вдвое дороже его DOS собрата. Это много. После всего вышесказанного
мне хочется тем не менее сказать, что программирование в FoxPro for Windows
практически ничем не отличается от программирования в DOS. По сути дела
значительных различий нет, кроме некоторого числа функций, обрабатывающих
специфические черты среды.
Так что хотя эта книга и не названа FoxPro for Windows Programming она могла бы быть
таковой, сделай я образы экранов с помощью Hijack for Windows и поменяй
их внешний вид. Я просто подумал, что такой упрощенный подход может направить
вас по неверному пути, чего я делать не хочу.
Кстати, если вы соберетесь писать приложение под Windows, не пытайтесь сначала написать
его для DOS, начинайте сразу в FoxPro for Windows. В свое время я написал
программу, позволяющую работать в FoxPro DOS как с электронной таблицей,
затем запустил ее под Windows. В DOS она работала прекрасно, но под Windows
проще было бы запустить Excel. Тем не менее по большому счету вы можете
использовать программы в этой книге на обеих платформах.
Я буду писать приложения, работающие под Windows, для моих заказчиков когда мне их закажут,
а это непременно произойдет. Я буду писать статьи на тему программирования
в среде FoxPro for Windows как только я найду интересную тему. Пока для
меня не совсем ясно какие приложения достойны переноса под Windows, и при
этом потребуется ли специальная техника программирования. Некоторое время
назад потенциальный подписчик спросил: не хочу ли я написать о том как
можно ввести в базу данных письма, которые переведены в электронную форму
с помощью сканера? О чем тут писать? Включите сканер и затем APPEND MEMO.
Это не статья, это одно предложение. Как вызвать Excel из программы на
FoxPro for Windows? Тут можно обойтись четырьмя строками кода. Это тоже
не статья, может быть потянет на абзац, но уж никак не на статью.
Я надеюсь, что вы найдете эту книгу интересной как с точки зрения программирования
для FoxPro/DOS, так и для FoxPro for Windows. Надеюсь также, что она даст
вам представление о принципах разработки приложений: как взаимодействуют
экраны и меню, как работают выпадающие меню и каким образом ваше приложение
реагирует на действия пользователя, как использовать цвет и о многих других
деталях, возникающих при попытке заставить компьютер работать на вас. Последняя
глава, посвященная событийно-управляемым приложениям, позволяет вам заглянуть
на "кухню", в которой создаются приложения, работающие так, как положено
современным программам, не загоняющим пользователя в жесткие рамки. Если
у вас есть какие-либо комментарии или предложения, не стесняйтесь, я готов
говорить с вами, мой адрес электронной почты в Compuserve 76434,104. Я
буду счастлив помочь вам.
|