ЭТО ПЕРЕПЕЧАТЫВАЕТСЯ ИЗ СТАТЬИ: Microsoft's Best-Kept Secret by Les Pinter,
и РАЗРЕШЕНИЕ ИСПОЛЬЗОВАТЬ ЭТО БЫЛО ПОЛУЧЕНО ОТ АВТОРА.

Visual FoxPro
Высочайший Секрет Microsoft

Лес Пинтер (Les Pinter)

Microsoft выпускает мощнейший инструмент для разработки базы данных;
И если Вы купили Visual Studio, Вы уже обладаете им!

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

Если Вы посетите семинары Microsoft по базам данных, Вы потратите весь день, выслушивая коммерческие предложения относительно того, как использовать продукты Microsoft создания баз данных, однако Вы не услышите даже слова относительно FoxPro. Я не могу ничего сказать, почему Microsoft не упоминает FoxPro, но пойдите туда и попытайтесь поискать слова на F, - таких слов нет.

Это - мой секрет: Microsoft Visual FoxPro, - самая лучшая платформа разработки базы данных, которую Microsoft продает. Я знаю, что каждый программист имеет своё особое мнение по поводу основного языка, который он, или она, используют каждый день, и в случае читателей этого Журнала (MS Database magazine- прим. переводчика), это - вероятно Visual Basic или Visual C++. Но если Вы купили Visual Studio, то на её CD-ромах (на первом из них), имеется Visual FoxPro, так что Вы уже владелец его. Вы действительно, действительно являетесь его владельцем! Теперь чтобы установить VFP достаточно вставить первый CD в дисковод и выполнить программу установки.

FoxPro был создан для работы с данными. Он содержит огромное количество небольших функций для работы с данными, которые Вы вынуждены были бы написать для себя непосредственно в VB или VC ++, так что Вы напишите всего лишь половину, или даже меньше кода, чем Вам пришлось бы написать в VB. Делается это быстро - и Вы на самом деле никогда не узнаете, насколько это действительно быстрые средства, пока Вы не примените FoxPro в своих разработках. А локальные таблицы, далеко не недостаток, и наличие их являются ключевой возможностью в формировании одного автоматизированного рабочего места и небольших прикладных программ локальной вычислительной сети без необходимости использования SQL Server, которая повышает стоимость и сложность административного характера вашей прикладной программы. Такая программа может обрабатывать сотни тысяч записей без сколько-нибудь заметной проблемы производительности; и новичку может потребоваться значительное время, чтобы стать хорошим VB-программистом баз данных. Значительно проще обучиться писать более простой код, (и получать конечный результат быстрее, и ... - прим. переводчика) и работать это будет быстрее: Что Вам здесь не нравится?

FoxPro объектно-ориентирован. Когда Вы открываете проектировщик формы в VB, Вы имеете палитру компонент, которые Вы можете перетаскивать на свой экран (разрозненную, над которой необходимо ещё сильно попыхтеть, чтобы заставить их вместе работать, к тому же вопрос о том: удастся ли Вам это вообще сделать, - остаётся открытым - прим. переводчика). В Visual FoxPro, Вы можете заменять базовую дюжину компонент - textbox, commandbutton, listbox, и т.д. (ту же, что Вы имеете и в VB, но только более приспособленную для работы с данными - прим. переводчика) Вашими собственными классами меньше чем за 60 секунд. (Здесь, видимо, подразумевается возможность на панели инструментов формы перегрузить стандартный набор компонент на набор классов из любой Visual FoxPro библиотеки классов - прим. переводчика). С этого момента, любое изменение свойства или поведения любого из ваших классов – на что тратиться всего несколько секунд - автоматически будет учтено во всех экземплярах форм Вашей прикладной программе (если конечно этот изменённый класс в них использован - прим. переводчика). Вы конечно можете делать кое-что подобное на других языках, но Вы абсолютно не можете делать это так быстро и легко.

FoxPro работоспособный (is robust). Как консультант разработчиков программного обеспечения, я писал прикладные программы для моей клиентов, которые были использованы в известных коммерческих программах, конкурирующих с программами, написанными в VB, Cи и других языках. Мои клиенты могли добавлять в них свои особенности или тратить время на поиск ошибок, согласно конкурентной борьбе, и это всё потому что FoxPr o чрезвычайно легок в использовании. В рыночных условиях, когда вы должны грамотно выполнять двойную работу: быстро писать код, и выполнять требования заказчика, FoxPro являются простыми средством для этого.

FoxPro гибок. Вы можете создавать ActiveX-документы или OLE-сервера для сред, где использование целого приложения нежелательно или непрактично. Если Ваш ISP не может обеспечить ответственность за хранение Ваших приложений, выполняющихся на Ваших Internet сайтах, пишите их как OLE-компоненты. Вы можете формировать объекты COM для прикладных программ с 3-х-слойной архитектурой, используя HTML как внешний интерфейс и FoxPro-таблицы или MS-SQL в качестве хранилища данных, и использовать MTS, чтобы управлять Вашими соединениями. Или использовать ODBC, для обращений к Вашим DBF-таблицам. С FoxPro Вы имеете также набор возможностей как и с любым другим языком, плюс еще нечто: - он быстрее и проще.

FoxPro - идеальный внешний интерфейс для MS SQL или Oracle. Он налету соединяется с любым из них, без программирования. Здесь нет опечатки: без программирования. FoxPro параметризованные удаленные представления могут быть созданы к подмножеству Ваши данные без единой строчки специализированного кода. Вам не найти лучшего языка для SQL-серверных приложений. Однако, прежде, чем обратиться к серверному продукту, где Вам будет необходимо приобрести на него лицензию и конечно же Вам потребуется администратор базы данных, рассмотрите возможность использования локальных таблиц FoxPro. Вы получите высокое быстродействие, вероятно 90% прикладных программ баз данных может быть выполнено используя локальные таблицы на одном автоматизированном рабочем месте или в небольших локальных вычислительных сетях, где формат FoxPro DBF - только преимущество. Черт возьми! Microsoft потеряли бы множество MS-SQL продаж, если бы это было широко известно ...

Всё вышесказанное - этот только громкие слова, но могут ли они быть доказанными? Я не имею каких-либо особых возможностей. Но Вы можете это доказать себе непосредственно сами. Зайдите на http://www.lespinter.com/ и разгрузите выпуск за Октябрь журнала Лес Пинтера Базы данных (Les Pinter's Database Journal), который содержит наше "Быстрое введение советы и приёмы для VB и VFP" ("QuickStart tips and tricks for VB and VFP"). Используйте раздел FoxPro, чтобы сформировать Ваше первое VFP-приложение. Если Вы уже пробовали создавать приложения баз данных на других языках, Вы будите приятно удивлены. Разработка приложения FoxPro обычно занимает приблизительно половину времени, от того, которое Вам потребуется в VB, и этому намного проще научиться. Почему Microsoft рекламируют его (VB - прим. переводчика)? Спросите их. Я уверен, что имеется причина. Но Вы не должны безоговорочно верить торговцам (salespeoples). Поробуйте сами, ведь это простой тест.

FoxPro принимает вызов (Take the FoxPro challenge)

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

Здесь предполагается, вот что Вы должны сделаете: Сформируйте быстрый прототип приложения как в Visual FoxPro, так и в Вашем альтернативном языке разработки базы данных. Выберите небольшую, но представительную часть прикладной программы, в таком объёме, который может быть выполнен в течении недели в FoxPro. Если Вы не имеете FoxPro разработчика в штате, найдите консультанта, кто любит вызов (намёк понятен?). Запланируйте ещё две недели - по крайней мере двойной время - чтобы создать ту же самую прикладную программу на другом языке. Это – тест номер один.

Теперь, оцениваем. О, говорят, что необходима сотня тысяч записей на выборку, - любой представляет годовой объём данных, - и выполняем несколько запросов. Поработайте с данными. Напечатайте некоторые отчеты. Вы удивлины, не так ли? Это – тест номер два.

Теперь, делайте Ваш выбор языка. Вы выбрали! Не забавно ли?

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

Перевод выполнил: Михаил Дроздов


Михаил Дроздов.
Revised: Февраль 22, 2001.