image
DONKEY.BAS. Входит в комплект IBM PC в 1981. Соавтор — Билл Гейтс

Название BASIC появилась как сокращение от «Beginner's All—purpose Symbolic Instruction Code», что в дословном переводе означает «многоцелевой язык символических команд для начинающих». Это тот случай, когда дословный перевод совершенно точно передавал суть. Ключевой особенностью BASIC'а была не только его простота, но и возможность, находить решение задач в режиме диалога с компьютером.

Для многих компьютеров конца 60-х BASIC позиционировался как единственный язык программирования высокого уровня общего назначения, и со временем это привело к появлению различных его модификаций. Поворотным моментом в развитии языка стало появление Visual Basic.

Предыстория


В середине 50-х годов роль программирования в машинных кодах стала уменьшаться. Появились языки более высокого уровня – Fortran, Algol, Cobol и так далее.

Первым из них и одним из наиболее распространенных был Фортран (FORTRAN, от FORmula TRANslator – переводчик формул), разработанный группой программистов фирмы IBM в 1954 году (первая версия). Этот язык был ориентирован на научно-технические расчеты математического характера.

Название языка Algol (ALGOrithmic Language), первая версия которого появилась в 1958 году, подчеркивает то обстоятельство, что он предназначен для записи алгоритмов. Благодаря четкой логической структуре Алгол стал стандартным средством записи алгоритмов в научной и технической литературе.

Тогда для языков программирования высокого уровня была характерна предметная ориентация. Кроме того, подобные языки были чересчур сложны для начинающих разработчиков, особенно, если они не были инженерами. Поэтому естественно, что со временем появился язык программирования для «простых смертных».

BASIC. Просто BASIC


С идеей создания этого языка программирования ассоциируют известную историю про английского миссионера.
В XIX веке одному английскому миссионеру, который искал возможность облегчить и упростить контакт с туземцами, пришла в голову гениальная мысль — вычленить из английского языка самую простую его часть, практически не имеющую грамматики, и содержащую около 300 самых распространённых слов. Этот урезанный подвид английского языка был назван BASIC ENGLISH, и как показала практика — он действительно оказался очень простым для усвоения, и вскоре завоевал популярность не только среди туземного населения, но и среди иммигрантов, для которых английский не был родным языком.
Спустя сто лет аналогичный путь избрали сотрудники математического факультета Дартмутского колледжа. Они решили облегчить взаимодействие между компьютером и непрофессиональным пользователем с помощью «упрощенного» языка программирования.

В 1964 году Томас Курц и Джон Камени создали специализированный язык программирования, который состоял из простых слов английского языка. Новый язык назвали BASIC.

image

Они использовали его для обучения студентов навыкам программирования. Язык получился настолько простым и понятным, что через некоторое время его начали применять и в других учебных заведениях.

image

Серьезное влияние на BASIC оказали Fortran II и Algol 60. Кроме того, разработчики реализовали в нем механизмы работы для систем с режимом разделения времени, а также обработки текста и матричной арифметики. Изначально компилятор языка был написан для мейнфрейма GE-265.

image

Расцвет


В 70-х появились более компактные компьютеры (ПК). Это обстоятельство удачно использовали Билл Гейтс и Пол Аллен, основатели Microsoft.

image

Они создали новую версию BASIC для первых компьютеров «Альтаир» (MITS Altair), способную работать в 4КБ оперативной памяти. Со временем именно эта версия и превратилась в один из самых популярных языков программирования в мире.

image
Altair

Периодом наибольшего расцвета и развития исходного BASIC можно считать конец 1970-х — первую половину 1980-х годов. Его версии появились на других платформах, и скоро стали расходиться миллионными тиражами с всевозможными изменениями и доработками. Одной из самых популярных версий был Applesoft BASIC, ставший стандартным языком на Apple II.

Applesoft BASIC был написан фирмой Microsoft как замена системе Integer BASIC, использовавшейся в самой первой модели Apple II и обладавшей весьма ограниченными возможностями. Applesoft BASIC был прошит в ПЗУ всех моделей Apple II, начиная с Apple II+, и всех клонов Apple II. Также более ранняя и урезанная версия Applesoft BASIC была доступна на кассетах для самой первой модели Apple II.

image

Для операционной системы CP/M был создан диалект BASIC-80, надолго определивший развитие языка.

Когда появились первые персональные компьютеры IBM PC, именно он стал стандартом в программировании, но уже в виде GW-Basic.

В середине 1980-х BASIC стал основным языком в сложных моделях программируемых калькуляторов, которые как раз к этому времени достигли мощности, допускающей применение полноценного языка высокого уровня. BASIC был встроен в советский калькулятор «Электроника МК-85» и все его более поздние модели.

image

Также в 1985 году появилась IDE Quick Basic — интегрированная среда разработки и компилятор языка программирования BASIC, разрабатывавшаяся компанией Microsoft с 1985 по 1988 год. Существовали версии для DOS и Mac OS. Используемый диалект BASIC был основан на усовершенствованном диалекте GW-BASIC: была реализована поддержка пользовательских типов, конструкций структурного программирования, значительно расширена поддержка графических и дисковых операций.

Роберт «Боб» Зейл в 1987 году на основе своей многолетней разработки BASIC/Z создал Turbo Basic, а затем продал его компании Borland. Журнал Infoworld назвал его одним из самых значительных продуктов того года.

image

В отличие от большинства реализаций BASIC того периода, Turbo Basic был полным компилятором, генерировавшим родной код для MS-DOS.

Несмотря на огромное количество версий языка BASIC, при разработке новой версии языка всегда сохранялась совместимость с прежними версиями: с программой, написанной для более ранних версий вполне (иногда с незначительными изменениями) можно было работать и в последующих версиях этого языка.

Вторая жизнь


В начале 90-х появилась операционная система Microsoft Windows с новым графическим интерфейсом пользователя.

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

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

image

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

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

Конечно, это был только первый шаг, так как компания Билла Гейтса планировала укрепить позиции Windows на рынке. А это было бы очень трудно сделать, оставив коммерческих разработчиков без эффективных средств создания приложений под MS Windows.

Система программирования, созданная разработчиками Visual Basic, позволяла абстрагироваться от внутренней структуры Windows. Меню, окна, списки, кнопки, поля ввода текста и другие элементы интерфейса Windows добавлялись в программу с помощью простейших операций drag&drop, и большая часть кода для их инициализации и настройки генерировалась автоматически.

Свою первую программу VB-программисты могли создать уже через несколько минут после начала изучения этого языка. Более того, Visual Basic позволял разработчикам создавать новые элементы графического интерфейса, которые также могли использоваться в программах наравне со стандартными.

Несмотря на то, что многие С-разработчики не воспринимали всерьез попытки Microsoft сделать простой и понятный инструмент разработки Windows-программ, остальные участники ИТ-сообщества возлагали на Visual Basic большие надежды.

В 1994 году компания выпустила Visual Basic for Applications. Именно в это время, после включения VBA в состав Microsoft Office, Basic стал одним из основных стандартов программирования для Windows.

Первоначально задумывавшийся как игрушка, Visual Basic от Microsoft невероятно быстро завоевал программистский мир. Его популярность обусловлена двумя причинами: относительной простотой и продуктивностью.

Программы на VB работали медленнее своих аналогов на C/C++, но все же они достаточно быстры для многих деловых целей и требуют гораздо меньше времени на разработку. Формы были той самой сберегающей усилия абстракцией, которую предложил VB программистам Windows.

IDE VB позволила разрабатывать окна графически, перетаскивая элементы управления, такие как кнопки и списки, с панели инструментов в форму. Получив удовлетворительный внешний вид формы, можно было переходить к кодовой части и писать обработчики событий для каждого элемента управления формы.

Разработка приложения в VB, таким образом, состояла из создания нескольких форм, которые взаимодействовали друг с другом.

С точки зрения написания кода важным отличием от того же C++ стал отказ от указателей. Так решил Билл Гейтс, еще во время разработки первых версий Microsoft BASIC. Хотя указатели полезны, так как разрешают прямой доступ к памяти по любому адресу, их использование сопряжено с ошибками в том случае, если они применяются неаккуратно. А так как первоначально язык создавался для «простых смертных», это решение выглядит вполне оправданным.

Основные версии Visual Basic


В первой версии (1991 год) Алан Купер реализовал принцип связи языка и графического интерфейса.

Начиная с третьей версии (1993) в VB появилась поддержка MS Access.

Visual Basic 4.0 (1995) — версия, в которой появилась возможность создавать как 32-х так и 16-разрядные Windows-приложения. Кроме того, в язык были добавлены классы.

Начиная с VB 5.0 (1997), появилась возможность разрабатывать собственные COM-компоненты. Кроме того, появилась новая виртуальная машина, реализованная в динамической библиотеке MSVBVM50.DLL. Компилятор VB для трансляции использовал многопроходный режим, но в конечном счете полагался на компилятор Microsoft C++ для получения выходного машинного кода после компиляции в промежуточный язык. Использование библиотеки времени исполнения и внутреннего интерфейса C++ явилось отправной точкой для формирования технологии .NET.

VB версии 6 — это уже мощный язык, который можно использовать для создания распределенных приложений с применением компонентов СОМ и Microsoft Transaction Server. Microsoft предложила трехуровневый подход для архитектур «клиент-сервер», в котором «тонкие» пользовательские интерфейсы взаимодействовали с удаленными компонентами VB для получения данных из базы данных или с другой машины.

Более того, VB6 (1998) можно было использовать для создания элементов управления Active-X, работающих вместе с Internet Explorer.

image

В 2002 году появился первый выпуск Visual Basic .NET. С этого момента обратная совместимость с классической версией Visual Basic оказалась нарушена.

С 2005 года Visual Basic входит в состав IDE Microsoft Visual Studio 2005. По сей день язык развивается вместе с IDE – вплоть до текущей версии – MS Visual Studio 2015.



Языки Basic и Visual Basic прошли серьезный путь и претерпели существенные, можно сказать, необратимые изменения. От их изначальной простоты мало что осталось. В результате VB превратился в «обычный» объектно-ориентированный язык программирования высокого уровня.
Поделиться с друзьями
-->

Комментарии (10)


  1. MagisterLudi
    17.11.2016 12:17
    +8

    Найди 10 отличий — GOTO BASIC


  1. KlimovDm
    17.11.2016 12:27
    +2

    «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.»
    © Edsger Wybe Dijkstra


    1. Scf
      17.11.2016 15:37
      +3

      Я изучал языки в таком порядке: ZX BASIC — ZX asm — Pascal/x86 asm — C — Java. Никакой деградации не ощущаю.


      1. KlimovDm
        17.11.2016 16:04
        +1

        К сожалению, дискутировать с Дейкстрой на эту тему — уже поздно :(


      1. Aleksandr_Zh
        17.11.2016 18:54

        Бейсик на БК 0010-01, Бейсик на Спектруме, УКНЦ, Паскаль на УКНЦ, QBasic и QuickBasic на IBM, Турбобейсик на IBM (документооборот небольшой конторы), Dbase IV (FoxPro), асм на 8086, асм на PIC, асм на AVR.
        С 2004 года не выключаясь работает система управления уличным освещением моего городка, она же опрашивает «интеллектуальные» счетчики эл.энергии. В блоках — микроконтроллер pic16f84 (еще без буквы А), а в диспетчерском ПК — программа на QBasic (был выбран специально как простой, чтобы после моего ухода любой мог разобраться и что-то изменить в коде. Обращаю внимание: интерпретатор, не компилятор. Первая версия системы грузилась с дискеты 3,5 дюйма и работала без монитора: отображение выполнялось на св.диодном панно.
        До сих пор на МК пишу на Паскалях да Бейсиках, хотя сносно понимаю асм и Си. Для ПК пробовал PureBasic — весьма вкусно. В среде Офиса писал на скриптах — работает до сих пор в конторе, из которой уволился еще в 2006м году…

        дело не в языке, дело в подходе и качестве компиляции/интерпретации конкретной среды


  1. Focushift
    17.11.2016 18:54

    А еще я видел микрософтовский Visual Basic for DOS, с окошками как в нортон утилитах, жале про него не рассказали.


    1. Aleksandr_Zh
      17.11.2016 21:24

      у меня VB 1.0 для DOS долго лежал в архивах ))) прикольнейшая штука.
      Жаль, у нас тогда перестройка была и мы всё, что «за бугром» было в 90-2000х, просто пропустили… Я? когда поиграkся в VB 5, долго балдел, вспоминая, сколько усилий требовалось в том же ТурбоПаскале чтобы нарисовать меню в программе (под ДОС даже псевдографикой) и с тенями — был такой понт тогда :)
      Я дико любил Паскаль за его аккуратность и требования к программе, но по факту большее распространение получили всякие Бейсико-подобные среды.
      Даже сейчас для микроконтроллеров найти Хороший компилятор Паскаля — еще та задача! Или Бейсики, или Си. Паскаль только немножечко внешне, а по факт почти структура Си.


  1. arnika_sky
    17.11.2016 18:54

    Кажется, такой устаревший и неудобный язык, но он до сих пор живет и используется в enterprise решениях.


  1. Marwin
    17.11.2016 21:24
    +1

    мне «повезло» узучать бейсик в школе… потом по инерции даже продолжил писать на нём уже в .net среде, когда вышла первая VS в 2002. И при этом смотрел на С++, как на беспросветный ассемблер. Но, к счастью, в один прекрасный день решился таки начать изучать шарп, и теперь не представляю как я мог так ошибаться, и что не нет более чистого и интуитивного языка, чем шарп… ну и вообще С-подобные диалекты


  1. vba
    18.11.2016 16:11
    +1

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