Главная страница Visual 2000 · Общий список статей

Basic — этапы большого пути
От "Васика" к Visual Basic for Application

Андрей Колесов

© 2000, Андрей Колесов
Авторский вариант. Статья была опубликована c незначительной литературной правкой в журнале "Наука и жизнь" N 10/2000, с. 18-20.

"Lost your BASIC instincts?
Then it's time for a reassessment..."
("Забыли свой основной интстинкт?
Тогда как раз время для переоценки...")


Еще каких-нибудь пять лет назад упоминание Basic

Еще каких-нибудь пять лет назад упоминание Basic (Бейсик) в качестве языка программирования вызывало лишь снисходительную усмешку (а порой и негодование) у большинства профессиональных разработчиков ПО. Объяснялось это просто: "Да, есть такой язык, которым пользуются любители (если не сказать "чайники"). Но ставить "Васик" в один ряд с настоящими средствами программирования — это просто смешно".

Сейчас вряд ли кто-то рискнет высказать такое мнение: за прошедшие годы Microsoft Visual Basic (VB) превратился в самый популярный в мире инструмент разработки приложений. Более того, знание его основ сегодня фактически является обязательным для всех программистов, какими бы средствами они не пользовались. Это объясняется двумя взаимосвязанными факторами. Во-первых, VB очень широко распространен и используется не только в качестве самостоятельного средства, но и в виде системы программирования, встроенной в многочисленные прикладные программы (в частности MS Office). Во-вторых, превратившись в серьезный профессиональный инструмент, VB остался очень удобным средством для обучения программирования и решения небольших задач.

В начало статьи

Как все начиналось

Язык Basic был разработан преподавателями Дартмутского колледжа Дж.Кемени и Т.Курцом в 1965 году как средство обучения и работы непрофессиональных программистов. (Дартмутский колледж в штате Нью-Гампшир, США, был создан в середине 18 века, это одно из старейший высших заведений Америки). Его назначение определено в самом названии, которое является аббревиатурой слов Beginner's All-purpose Symbolic Instruction Code (многоцелевой язык символических инструкций для начинающих) и при этом в дословном переводе означает "базовый".

Примечание. Раньше языки программирования писались обязательно строчными буквами — BASIC, FORTRAN. В 1990 году Международная организация стандартов приняла решения, что они пишутся как обычные имена собственные — строчной является только первая буква.

Однако парадокс заключается в том, что, будучи действительно весьма простым средством программирования, совершенно непригодным в те времена для решения серьезных задач, Basic представлял собой качественно новую технологию создания программ в режиме интерактивного диалога между разработчиком и компьютером. То есть представлял собой прообраз современных систем программирования. Другое дело, что решение подобной задачи на технике тех лет было возможно только за счет максимального упрощения языка программирования и использования транслятора типа "интерпретатор". В силу этих же причин Basic в основном применялся на мини- и микроЭВМ, которые в 70-е годы имели оперативную память, объем которой кажется сегодня просто нереальным (4-32 тысяч байт). Резкое развитие систем на основе Basic началось с появлением в начале 80-х годов персональных компьютеров, производительность и популярность которых растет вот уже двадцать лет невиданными темпами.

В начало статьи

QuickBasic против TurboBasic

В конце 80-х годов насчитывалось около десятка систем Basic различных фирм-разработчиков. Однако главная борьба шла между QuickBasic (компания Microsoft) и TurboBasic (Borland). Вообще-то, конкуренция между этими двумя разработчиками средств программирования шла по целому спектру языков — Basic, Pascal и C. И результатом ее в 1989 году стало неявное мировое соглашение, когда Microsoft отказалась от дальнейшей поддержки Pascal, а Borland — Basic.

Тогда многие комментаторы язвительно замечали, что Microsoft отказалась от Pascal в пользу Basic исключительно из-за личных пристрастий основателя и руководителя корпорации Билла Гейтса. Действительно, разработка в 1975 году интерпретатора Basic для микроЭВМ Altair 8800 была первым проектом двадцатилетних Билла Гейтса и Пола Аллена, только что основавших фирму Micro-Soft (в то момент они были единственными сотрудниками новой компании). С тех пор президент Microsoft постоянно участвовал в стратегии разработок Basic-систем корпорации и, до сих пор, перечисляя свои титулы, Билл Гейтс довольно часто добавляет "Basic-программист". (Но "отцом VB" считается Алан Купер — независимый программист, который в конце 80-х годов разработал и продал затем Microsoft прототип механизма визуального проектирования форм для Basic.)

Однако, как мне представляется, победа QuickBasic определялась чисто технологическими причинами — в этой системе была удачно реализована схема смешанного использования традиционных Basic-технологий и классических методов создания сложных программных систем. Отметим, что с 1990 года усеченный вариант QuickBasic под названием QBasic был включен в состав MS-DOS. (Многие современные пользователи ошибочно думают, что QuickBasic и QBasic — одно и то же.)

В начало статьи

Эпоха Visual Basic

В начале 90-х годов Microsoft начала активную борьбу за продвижение в массы своей новой операционной системы Windows (против своей же, но более уже устаревающей MS-DOS). Но, как известно, пользователи работают не с ОС, а с программами, которые работают в нее среде. Поэтому скорость смены платформы в основном определяется темпами появления соответствующих прикладных программ.

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

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

Действительно, VB 1.0 в тот момент был больше похож не на рабочий инструмент, а на действующий макет будущей среды разработки. Его принципиальное новшество заключалось в реализации идей событийно-управляемого и визуального программирования в среде Windows, которые весьма радикально отличались от классических схем разработки программ. По общему признанию VB стал родоначальником нового поколения инструментов, называемых сегодня средствами быстрой разработки программ (Rapid Application Development, RAD). Сегодня эта идеология считает привычной, но тогда она казалась совершенно необычной и создавала серьезные проблемы (в том числе чисто психологического плана) для программистов "старых времен".

Тем не менее, число VB-пользователей росло, причем во многом за счет огромной популярности ее предшественника — QuickBasic. При этом VB быстро "мужал", усиливаясь за счет, как развития среды программирования, так и включения профессиональных элементов языка и проблемно-ориентированных средств. И к моменту выпуска в 1995 году VB 4.0 эта система была уже признанным и одним из самых распространенных инструментов создания широкого класса приложений. В настоящее время используется версия VB 6.0, появление версии 7.0 ожидается в начале следующего года.

В начало статьи

Visual Basic for Applications

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

В конце 1993 г. Microsoft объявила о намерении создать на основе VB новую универсальную систему программирования для прикладных программ, которая получила название Visual Basic for Applications (VB для приложений). Естественно, реализацию этого проекта она начала с собственных офисных пакетов.

Первый вариант VBA 1.0 появился в составе MS Office 4.0, но лишь в программах Excel 4.0 и Project 6.0. В других же приложениях - Word 6.0 и Access 2.0 - были собственные варианты Basic. Более того, VBA 1.0 довольно сильно отличался (причем имея ряд существенных преимуществ) от используемой тогда универсальной системы VB 3.0.

Качественный перелом наступил в конце 1996 года с выпуском MS Office 97, в котором была реализована единая среда программирования VBA 5.0, включенная в программы Word, Excel и PowerPoint. Более того, VBA 5.0 использовала тот же самый языковый механизм и среду разработки, что и универсальная система VB 5.0. В состав выпущенного год назад MS Office 2000 вошла соответственно версия VBA 6.0, которая используется в шести программах — Word, Excel, PowerPoint, Access, Outlook, Frontpage.

В результате последние три года Microsoft позиционирует сегодня свой пакет MS Office не просто как набор прикладных программ, а как комплексную платформу для создания бизнес-приложений, решающих широкий круг специализированных задач пользователей. Именно этим объясняется появлением в его составе специального выпуска для разработчиков приложений — Developer Edition.

Одновременно, VBA активно продвигает в качестве отраслевого стандарта для управления программируемыми приложениями, объявив о возможности его лицензирования. Сегодня уже более ста ведущих мировых фирм-разработчиков прикладных программ (среди них есть о российские) приобрели лицензии на него и включают VBA в состав своих программных продуктов.

Однако нужно подчеркнуть, что несмотря на доминирование VB и VBA на рынке программных средств, этот инструмент не является единственным примером использования языка Basic. В частности, в конце 90-х годов получила значительное распространение разработка компании Sax Software — механизм Sax Basic Engine, своеобразный "облегченный" вариант VB 6.0, успешно используемый многими разработчиками для автоматизации своих приложений.

В начало статьи

Не начать ли с "Васика"?

Из сказанного выше можно сделать следующий вывод. Освоение механизма программирования на VBA, реализованного в офисном приложении, которое установлено на вашем компьютере, откроет вам возможность использования полученных знаний и навыков при работе с десятками и сотнями других программ, в том числе и тех, которых пока еще нет на свете. Начав с составления простейших макрокоманд, при желании можно в рамках одного инструментария стать профессионалом, разрабатывающим программные системы любой сложности. Не говоря уже о том, что после освоения технологии разработки приложений смена инструментария не будет составлять серьезных проблем.

Десять лет назад во всем мире было не более двух миллионов программистов. Сегодня их насчитывается около десяти миллионов, из них не менее 70 процентов используют в качестве хотя бы одно из инструментов VB или VBA.

В начало статьи