ЭВМHISTORY
Статьи. Обзоры. Истории

Программирование | MS Visual FoxPro



visualfoxpro, visual, fox, pro, визуал, фокс, про, язык, программирование

Если вы никогда ничего не слышали о Visual FoxPro, значит, вы стали интересоваться информационными технологиями в ту эпоху, когда этот программный продукт уже пережил пик своей популярности. А если нет - почему бы не вспомнить об этом действительно интересном и полезном средстве разработки?


Введение, или совсем чуть-чуть истории


Разработка приложений, взаимодействующих с базами данных, являлась делом более чем актуальным со времен появления первых систем управления базами данных. В связи с этим ничуть не удивительно, что на рынке средств разработки приложений появилось достаточно много программных продуктов, "заточенных" именно под работу с базами данных. Появлялись эти среды, конечно, в такие стародавние времена, что не всякий старожил форума "Компьютерных вестей" их вспомнит, но, тем не менее, было когда-то и такое славное время.

Вот тогда-то и появился инструмент, которому впоследствии суждено было войти в историю индустрии разработки программного обеспечения под именем FoxPro. Началась же история этого, без преувеличений, легендарного средства разработки более четверти века назад, в уже далеком 1984 году, когда компания Fox Software начала проект под названием FoxBase. Долго ли, коротко ли, но в 1992 году компанию приобрела разросшаяся не на шутку корпорация Microsoft, и именно тогда у продукта, который уже назывался FoxPro, в названии появилась приставка Visual. Под руководством Microsoft продукт развивался и совершенствовался на протяжении последующих пятнадцати лет, до тех пор, пока в 2007 году не вышло последнее официальное обновление для Visual FoxPro - до версии 9.0 Service Pack 2. Конечно, на протяжении пятнадцати лет существования Visual FoxPro в историю продукта было вписано немало интересных страниц, но рассматривать их здесь сейчас не стоит, потому что вряд ли кому-то, кроме тех, кто плотно работал с Visual FoxPro, это будет действительно интересно, да и место, которое доступно одной отдельно взятой газетной статье, также ограничено.

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


Что такое Visual FoxPro?


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

Любое средство разработки, в первую очередь, характеризуется тем языком программирования (или несколькими из них), который оно предлагает использовать в процессе разработки программного обеспечения. В случае Visual FoxPro таким языком, соответственно, будет FoxPro. Язык этот, который может показаться уже несколько морально устаревшим с позиций сегодняшних реалий индустрии программирования, до сих пор, тем не менее, обеспечивает вполне качественное решение задач, возникающих у большинства разработчиков прикладных приложений. Язык, который закладывался в эту среду её первыми разработчиками, берет свои истоки от xBase - языка программирования, который изначально был "заточен" под работу с dBase и, конечно, сильно отличался от того языка, который был "на вооружении" людей, имевших дело с FoxPro в те годы, когда эта среда ещё даже не перешла под "покровительство" Microsoft. В Visual FoxPro в распоряжении программиста имеется мощный объектно-ориентированный язык, позволяющий легко оперировать данными благодаря непосредственно встроенным в язык операторам.


Язык программирования


Возможно, эти утверждения по поводу языка, предлагаемого программистам в Visual FoxPro, покажутся вам слишком общими. Что ж, позвольте проиллюстрировать их примером. В листинге приведен небольшой пример кода на Visual FoxPro. Думаю, даже не обладая глубокими познаниями в программировании и в работе с базами данных, вполне можно увидеть основные черты, присущие коду на этом языке - то есть, возможность работы с объектами и прозрачность работы с базами данных. Комментарии в коде помогут понять общую логику данного небольшого примера.

&& Create a table
CREATE TABLE randData (iData I)
&& Populate with random data using xBase and SQL DML commands
FOR i = 1 TO 50
APPEND BLANK
REPLACE iData WITH (RAND() * 100)
INSERT INTO randData (iData) VALUES (RAND() * 100)
ENDFOR
&& Place a structural index on the data
INDEX ON iData TAG iData
CLOSE ALL
&& Display ordered data using xBase-style commands
USE randData
SET ORDER TO iData
GO TOP
LIST NEXT 10 && First 10
SKIP 81
LIST NEXT 10 && Last 10
CLOSE ALL
&& Browse ordered data using SQL DML commands
SELECT * ;
FROM randData ;
ORDER BY iData DESCENDING


Стоит отметить, что поскольку в конечном счете среда Visual FoxPro предназначалась для создания приложений, с которыми должен вести активный диалог конечный пользователь, то в распоряжении разработчика, пользующегося ею, были средства создания полноценного графического пользовательского интерфейса. С учетом того, что Visual FoxPro была ориентирована, конечно же, на создание приложений под Windows, нет ничего удивительного в том, что корпорация Microsoft постаралась снабдить разработчика такими возможностями. Благодаря поддержке объектов в языке программирования Visual FoxPro работать с элементами пользовательского интерфейса достаточно просто. Об этом красноречиво свидетельствует листинг - весьма короткий, но, смею надеяться, достаточно познавательный.

loForm = CREATEOBJECT("HiForm")
loForm.Show(1)
DEFINE CLASS HiForm AS Form
AutoCenter = .T.
Caption = "Hello, World"
ADD OBJECT lblHi as Label WITH ;
Caption = "Hello, World!"
ENDDEFINE



Среда разработки


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

visualfoxpro, visual, fox, pro, визуал, фокс, про, язык, программирование

Давно уже прошло то время, когда среды разработки от Microsoft подвергались повсеместной критике и вызывали желание закрыть их поскорее. Конечно, если сравнивать Visual FoxPro с более современными средами разработки, то можно найти ряд достаточно заметных для глаза несоответствий новейшим стандартам. Но если вспомнить о том, что речь идет о программном продукте, последний раз обновлявшемся несколько лет назад, то можно утверждать, что тогдашним стандартам Visual FoxPro соответствует на 100%.

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


Закат


Возвращаясь к вопросу о том, почему дальнейшая разработка Visual FoxPro была прекращена, стоит обратиться к первоисточнику - то есть, к объяснениям, которые дала по этому поводу сама корпорация Microsoft.

Во-первых, по словам представителей корпорации, дальнейшее развитие этого программного продукта не мыслилось без создания его 64-битной версии. Для этого пришлось бы практически полностью переписывать "ядро" Visual FoxPro, что не входило в планы Microsoft. Во-вторых, дальнейшее развитие Visual FoxPro - продукта, использовавшего собственный "движок" для работы с базами данных, - выглядело не слишком логично в свете достаточно солидных инвестиций в создание полноценной промышленной СУБД SQL Server, имеющей бесплатную версию SQL Server Express Edition, практически полностью покрывающую потребности большинства пользователей Visual FoxPro. Ну а в-третьих, популярность Visual FoxPro стабильно снижалась, и слухи о том, что это средство разработки планируется перестать совершенствовать, ходили ещё с начала 2000-х годов.

Разработка продукта MS прекращена с выходом SP2 для версии 9.0.

В конце марта 2007 организовалось движение испаноязычного FoxPro-сообщества MasFoxPro (MoreFoxPro в английском), целью которого стало написание петиции в Microsoft с предложением продолжить работу по обновлению Visual FoxPro или открыть исходные коды.

3 апреля 2007 Microsoft ответила на просьбы заявителя таким заявлением от Алана Гривера (Alan Griver):

Мы хорошо знаем FoxPro-сообщество, и это сыграло большую роль в нашем объявлении от 13 марта. Всегда нелегко объявлять, что мы не собираемся выпускать следующую версию продукта, и к подобному мы подходим очень осторожно.

Мы не объявляем конец FoxPro: очевидно, приложения FoxPro будут продолжать работать. Согласно нашим внутренним оценкам в FoxPro 2.6 работает гораздо больше приложений, чем в VFP, а ведь FoxPro 2.6 не поддерживается много лет. Visual FoxPro 9.0 будет поддерживаться Microsoft до 2015 года.

Чтобы далее развивать FoxPro, нам потребовалось бы приступить к созданию 64-разрядной среды разработки, что привело бы к практически полной переработке продукта. Кроме того, мы инвестируем в SQL Server как в масштабируемую СУБД, в том числе поставляя бесплатную редакцию SQL Server Express Edition. Мы рассматривали передачу системы одному из наших партнёров, однако крупные FoxPro-клиенты дали нам понять, что они не будут использовать FoxPro, если эта система перестанет поставляться проверенным вендором. Мы полагаем, что наилучшее решение — выложить открытые исходные коды среды на CodePlex, что уравновесит потребности как сообщества, так и крупных клиентов.


Расширенная поддержка Visual FoxPro окончательно прекращена 13 января 2015 года.


Visual FoxPro сегодня


Нельзя сказать, что с выходом последней версии земной путь Visual FoxPro оборвался. До сих пор по всему миру успешно работают десятки, если не сотни тысяч приложений, написанные с его использованием. Да и новые никто, в общем-то, не запрещает писать, потому что даже сегодня Visual FoxPro отлично подходит для решения многих задач. Если вдруг вам понадобится когда-нибудь освоить этот инструмент разработки, то на помощь придет замечательный русскоязычный ресурс по Visual FoxPro - www.foxclub.ru. Ну и, конечно, не стоит забывать о печатнойотсканированной) литературе, которой за годы существования Visual FoxPro было выпущено изрядное количество.

© greenmile

Источники:
bourabai.ru


В начало


Программирование | MS Visual FoxPro



Рейтинг@Mail.ru Яндекс.Метрика