Джордж Гули защищает FoxPro

В последнее время снова появились статьи и высказывания по поводу будущего Visual FoxPro. В одних статьях говорится, что Microsoft собирается "наконец-то" отказаться от дальнейшего развития Visual FoxPro. В других представители Microsoft изо всех сил стараются убедить общественность в обратном. Нам трудно найти рациональное зерно в таких дискуссиях, поэтому мы решили просто опубликовать одно из мнений на эту тему. Хотим сразу оговориться, что в этой статье выражается исключительно мнение автора, и ее нельзя рассматривать ни как нашу позицию, ни, тем более, как официальную позицию Microsoft.

В последнее время многие участники Fox-форума в CompuServe требовали информации, подтверждающей мое утверждение, что VFP является одним из основных продуктов, предлагаемых Microsoft для разработки бизнес-приложений. В силу того, что моя фирма тесно сотрудничает с отделениями Microsoft в Филадельфии и округе Колумбия, мы разработали следующее разъяснение, которое должно помочь заказчикам и менеджерам по продажам самой Microsoft найти оптимальное решение при выборе среди следующих инструментальных средств: VFP, VB, Access, VC++ и SQL Server.

Microsoft предлагает пять средств разработчика, которые могут использоваться совместно для создания разнообразных бизнес- приложений. Когда нас приглашают принять участие во встрече с крупными заказчиками, одним из первых вопросов, который задается, это принципы выбора инструмента разработки. Так как Micro Endeavors является независимой фирмой, успешно работающей в области разработки приложений на VFP, VB, Access и обучения использованию этих продуктов, заказчики прислушиваются к нашему мнению.

Как заказчики, так и представители Microsoft, ищут простые ответы на очевидно сложный вопрос. Для помощи в принятии решения мы составили список из упомянутых пяти продуктов и постарались идентифицировать каждый из них с точки зрения того, как он может быть использован при разработке бизнес-приложений. Список ставит своей задачей представить все пять инструментов как интегрированный набор, каждый компонент которого способен взаимодействовать с другим при разработке серьезных приложений масштаба предприятия.

Вот этот список.

Access:

Возможности:

Для чего подходит лучше всего: Visual Basic:

Возможности:

Для чего подходит лучше всего: Visual C++:

Возможности:

Для чего подходит лучше всего: SQL Server:

Возможности:

Для чего подходит лучше всего: Visual FoxPro:

Возможности:

Для чего подходит лучше всего:

Если заказчик хочет еще более компактный ответ на свой вопрос - ему можно сказать следующее:

В последнее время я не имел возможности читать сообщения, помещаемые в форум, и по возвращении на меня свалилось множество писем, в которых обсуждались возможности и перспективы Visual FoxPro. Так как за мной водится репутация человека, любящего добрые дебаты, я решил начать еще одно обсуждение.

Я заявляю следующее: Visual FoxPro 3.0 представляет собой наилучший инструмент разработчика для создания бизнес-приложений на ПК. Особенно выделяются следующие компоненты:

1. Объект Grid намного превосходит по гибкости и функциональности окно Browse версий 2.x, равно как и примитивные объекты для табличного представления данных, присутствующие в Delphi и Visual dBASE. Любой разработчик, который использует FoxPro 2.х и все еще сражается с проблемой создания форм для представления данных из связанных таблиц, обнаружит, что одного только Grid достаточно для перехода на новую версию продукта.

2. Язык программирования Visual FoxPro предлагает наследование, полиморфизм, инкапсуляцию. В отличие от Visual Basic и Access, Visual FoxPro истинно объектно-ориентированный. Это "свойство" обеспечивает многократное повышение производительности при разработке.

3. Microsoft настолько расширил возможности FoxPro по сравнению с предыдущими версиями, что говорить о "смерти" Visual FoxPro просто смешно.

4. Visual FoxPro быстрее чем Visual dBASE (даже в WFW на 8Мб 486/33 и много быстрее чем Visual dBASE на современном оборудовании), быстрее чем Visual Basic, быстрее чем Access, быстрее чем PowerBuilder и (на обработке данных) быстрее чем Delphi.

5. Visual FoxPro работает на Windows NT, WFW и Win95.

6. Процесс обучения при переходе от FoxPro for Windows к Visual FoxPro намного короче чем при переходе от C к C++, или от FoxBASE+ к FoxPro, или от dBASE III к dBASE IV, или от dBASE IV к dBASE V, или от Clipper Summer 87 к Clipper 5.0, или от Paradox к Paradox for Windows.

7. Средства поддержания ссылочной целостности (Referential Integrity), триггеры и хранимые процедуры предлагают исключительно развитые возможности по обработке локальных данных и обеспечивают возможность перехода на мощные серверы баз данных (upsizing).

8. Новые типы данных, такие как Integer, Double, Currency и Datetime предоставляют не только более гладкий переход к архитектуре клиент-сервер, но и позволяют уменьшить размеры таблиц при повышении производительности.

9. Наличие первичных ключей прекрасно решает давнюю проблему Xbase, при том что базовая структура .DBF остается неизменной.

10. Механизм буферизации записей позволяет обойтись двумя десятками строк кода там, где раньше при создании многопользовательских приложений требовались сотни. По мнению многих, TABLEUPDATE() представляет собой одно из наиболее значительных нововведений.

11. Никогда более не придется программировать, писать статьи или даже обсуждать "путы", которые делают наше приложение событийно-управляемым. READ EVENTS (и индивидуальные сессии данных) не только много проще, безопаснее и легче в сопровождении чем приемы, использующие Foundation Read, они к тому же быстрее!

12. Visual FoxPro имеет больше свойств и методов, способен обрабатывать больше событий чем Visual Basic, Access, PowerBuilder или Visual dBASE. В результате вряд ли найдутся желающие порассуждать на тему того, что приложение, написанное на Visual FoxPro, не является "настоящим" Windows-приложением.

13. Visual FoxPro умеет подключать (DECLARE) DLL.

14. Visual FoxPro предлагает полноценное средство автоматизации офиса за счет полного контроля над любым приложением, поддерживающем протокол OLE 2.0.

15. Visual FoxPro использует 32-bit OCX (с возможностью наследования).

16. Visual FoxPro позволяет создавать собственные динамические библиотеки (.FLL).

17. Visual FoxPro полностью совместим по коду с версиями 2.x. У разработчиков есть возможность перенести часть функциональности из экранных форм в классы и библиотеки невизуальных классов, правила проверки в базу данных, заменить Browse на Grid, но при этом сделать это в наиболее подходящий момент.

18. Клиентские приложения на Visual FoxPro работают очень хорошо. Особенно при разработке для использования баз данных SQL Server и Oracle.

19. Вкладки в Visual FoxPro позволяют создавать более компактные формы, при правильном использовании повышается производительность - пользователи довольны.

20. Построители (Builder) намного удобнее чем мастера (Wizard), подсказки (Cue Cards) или любые другие средства помощи разработчику, присутствующие в других продуктах.

21. Группа разработки приняла к сведению множество требований относительно интеграции Browse, использования первичных ключей, поддержания ссылочной целостности, обеспечения связи с серверами баз данных, использования большего количества рабочих областей и т. д. В новой версии Visual FoxPro мы получили много больше чем просто объектные расширения языка. При этом многие нововведения ведут к значительному повышению продуктивности разработчиков.

22. В следующей версии возможности Visual FoxPro будут еще больше расширены в тех областях, которые требуют усовершенствования (отладчик, встроенный редактор кода и т. д.).

Конечно, есть еще немало очевидных моментов, но для открытия упомянутой дискуссии достаточно того, что я уже успел сказать. Нужно сказать, что меня немало повеселила "критика", которую я в последнее время слышал в адрес Visual FoxPro, с другой стороны, нужно признать, что совершенных продуктов не существует, и Visual FoxPro в этом смысле не исключение. И, наконец, я хочу подчеркнуть, что готов ответить на любое количество писем от тех, кто искренне заинтересован в доброжелательном обсуждении предмета и при этом не разделяет мое мнение относительно возможностей Visual FoxPro.

Вот некоторые из наиболее упорных слухов, которые мне довелось узнать:

VFP работает медленно. Я проанализировал работу Visual FoxPro и обнаружил, что программа, написанная на Visual FoxPro, превосходит по быстродействию программы, созданные средствами любых других инструментов, за исключением FoxPro 2.x, и при использовании новых возможностей Visual FoxPro вместо кода FoxPro 2.x я часто обнаруживал превосходство VFP.

VFP работает на оборудовании, которое "не станет общепринятым ранее чем через два года". О чем вы говорите??? Pentium 90 уже стал использоваться повсеместно, а на компьютерах с Pentium 90 Visual FoxPro работает замечательно. Собственно говоря, для большинства задач вполне достаточно 486/66.

От редакции

Как и для большинства современных программ, наличие дополнительной памяти приводит к гораздо большему повышению производительности, чем наращивание мощности процессора. Благодаря резкому падению цен на память в последнее время, все больше пользователей смогут активно использовать современные средства разработки. Что же касается перспектив FoxPro, то, с одной стороны, действительно в последнее время в рекламной кампании Microsoft много внимания уделяется Visual Basic и Access и гораздо меньше Visual FoxPro. С другой стороны, уже "на выходе" новая версия Visual FoxPro 4.0. Во втором полугодии 1996 года мы планируем опубликовать серию статей по новой версии FoxPro - VFP 4.0. Кроме того, нами готовится книга по Visual FoxPro 4.0, которую мы планируем напечатать весной 1997 года. В общем, мы по- прежнему будем информировать вас о самых последних новостях и знакомить с передовой технологией. Оставайтесь с нами!

Вы можете связаться с Джорджем Гули по адресу: 71140.3527@compuserve.com, George F. Goley V

Hosted by uCoz