Для какого компьютера первоначально был создан транслятор basic

Обновлено: 04.07.2024

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

В 1975 году Пол Ален, молодой программист из Бостона, в содружестве со студентом Гарвардского университета Биллом Гейтсом написали программу, реализующую для микрокомпьютера Альтаир 8800 язык Бейсик, впервые использовав его для программного обеспечения персональных компьютеров. Впоследствии Гейтс и Аллен основали собственную фирму Microsoft. [1]

Содержание

История

Предпосылки

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

Однако, в течение 1960-х цены на компьютеры стали падать так, что даже небольшие компании могли их себе позволить; их быстродействие всё увеличивалось и наступило время, когда стало возможно организовать более эффективную непосредственную работу пользователей с компьютерами в режиме разделения времени (time-sharing).

Рождение

Бейсик был придуман в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Курцем, и под их руководством был реализован командой студентов колледжа. Со временем, когда стали появляться другие диалекты, а изначальную реализацию стали называть Dartmouth BASIC.

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

При проектировании языка использовались следующие восемь принципов. Новый язык должен:

Язык был основан частично на Фортран II и частично на Алгол-60, с добавлениями, делающими его удобным для работы в режиме разделения времени и, позднее, обработки текста и матричной арифметики. Первоначально Бейсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов. Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.

Взрывной рост

Зрелость

В этот период было создано несколько новых версий Бейсика. Microsoft продавала несколько версий Бейсик для MS-DOS/PC DOS, включая BASICA, GW-BASIC (модификация BASICA, не требующая «прошивки» от IBM) и Quick BASIC. Borland, известная своим Turbo Pascal, в 1985 году выпустила Turbo Basic 1.0 (его наследники впоследствии продавались другой компанией под именем PowerBASIC). На домашних компьютерах появились различные версии Бейсика, обычно включавшие в себя расширения для работы с графикой, звуком, команды ОС, а также средства структурного программирования. Некоторые другие языки использовали хорошо известный синтаксис Бейсика в качестве основы, на которой строилась совершенно иная система (см. например, GRASS).

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

Бейсик используется в некоторых моделях программируемых калькуляторов. Например, он был встроен в советский калькулятор «Электроника МК-85».

Описание языка

Ранние версии Бейсика (такие как BASICA, GW-BASIC) существенно отличаются от современных диалектов и сегодня практически не используются.

Ранние версии



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

Изменять вручную номера уже имеющихся строк было небезопасно, так как номера выполняли роль меток для оператора GOTO . Ранее в Бейсике были допустимы только числовые метки для этого оператора, и наличие в каждой строке уникального номера делало возможным безусловный переход к любой из них. Числовые метки и активное использование GOTO было неизбежным при программировании на Бейсике, что способствовало плохой структуре кода и в больших проектах приводило к запутыванию самих авторов. Был даже придуман шуточный термин «макаронное программирование» (spagetti code), потому что программа с частыми переходами GOTO , по мнению некоторых, напоминала тарелку со спагетти.

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

Использование функций, определяемых пользователем (участков кода, для многократного использования), было возможно двумя способами: определяемые функции и подпрограммы.

Подпрограммы не являлись аналогом функций таких языков, как Си или Паскаль, так как не имели имён и не могли принимать и/или возвращать параметры. Параметры и результаты передавались через глобальные переменные (все переменные в ранних версиях Бейсика были глобальными). Подпрограммы писались обычно в конце модуля, с нумерацией заведомо большей, чем планируемое количество строк (к примеру, нумерация блока подпрограмм могла начинаться с 5000, даже если в программе была пара сотен строк). Подпрограммы не имели заголовков и имён, и ничем не отличались от любого другого участка кода. Вызов подпрограммы осуществлялся с помощью ключевого слова GOSUB <метка> . Это практически клон GOTO , за исключением одного: возврат в точку вызова происходил автоматически, при достижении в подпрограмме ключевого слова RETURN . GOSUB , как и GOTO , только способствовали плохой структуре кода, так как отследить выполнение программы, содержащей большое количество безусловных переходов и подпрограмм, было сложной задачей.

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

В некоторых диалектах Бейсика имелась возможность загрузить файл с кодом непосредственно при выполнении программы (текущий при этом выгружался) оператором CHAIN . Это была одна из самых полезных возможностей языка, так как она позволяла разбить большой проект на модули, вызывая их в порядке необходимости.

Для выполнения программы на Бейсике использовалась передача имени файла с кодом программы интерпретатору в командной строке. В этом случае, после загрузки кода команда RUN (начать выполнение программы) вызывалась автоматически.

Фрагмент типичной программы на Бейсике:

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

Поздние версии

Одним из наиболее распространённых вариантов языка Бейсик стала реализация интерпретатора QBASIC корпорации Microsoft. Долгие годы она включалась как бесплатное приложение, входящее в операционные системы MS-DOS и ранних Windows. Особо следует выделить довольно мощные графические и звуковые возможности QBASIC, позволяющие программировать на этом языке даже игры.

Basic поздних версий (начиная с Borland Turbo Basic и Microsoft Visual Basic) резко отличается от ранних вариантов. Фактически, это новый язык, который во многом ближе к Фортрану или Паскалю, чем к исходному Basic’у. Основные изменения версий 1990-х годов состоят в следующем:

Фрагмент типичной программы на FreeBASIC:

Помимо написания полноценных программ, Бейсик широко применяется как основа для различных скриптовых языков (например, макросы в пакете Microsoft Office пишутся на диалекте VBA).

Критика

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

Одной из «визитных карточек» Эдсгера Дейкстры стало высказывание: «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации». Однако, это высказывание цитируется вне контекста, в котором Дейкстра подверг критике и многие другие популярные в то время языки.

Стандарты

Производители

В разное время интерпретаторы BASIC выпускались различными организациями, компаниями, фирмами, как за рубежом, так и в СССР:

Название 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.

Расцвет

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

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

image

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


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

Бейсик (BASIC – сокращение от англ. Beginner’s All-purpose Symbolic Instruction Code – универсальный код символических инструкций для начинающих; англ. basic – основной, базовый) – семейство высокоуровневых языков программирования.

Бейсик был придуман в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом и реализован командой студентов колледжа под их руководством. Со временем, когда стали появляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC.

Бейсик был спроектирован так, чтобы студенты без специального математического образования могли писать программы. Он создавался как решение проблем, связанных со сложностью более старых языков, и предназначался для более «простых» пользователей, заинтересованных не столько в скорости своих программ, сколько просто в возможности использовать компьютер для решения своих задач. Для популяризации языка первый компилятор распространялся бесплатно.

При проектировании языка были сформулированы восемь требований к нему:

Язык был основан частично на Фортран II и частично на Алгол-60, с добавлениями, делающими его удобным для работы в режиме разделения времени, обработки текста и матричной арифметики. Первоначально Бейсик был реализован на GE-265 с поддержкой множества терминалов. Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.

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

В 1975 году компания Microsoft выпустила Altair BASIC. После этого был выпущен ряд операционных систем, использующих Basic в качестве основного языка. Для операционной системы CP/M был создан диалект BASIC-80, надолго определивший развитие языка.

В этот период было создано множество новых компиляторов и интерпретаторов Бейсика. Майкрософт продавала несколько версий BASIC для MS-DOS/PC-DOS, включая BASICA, GW-BASIC и QuickBASIC (QBASIC). Компания Borland в 1985 выпустила Turbo BASIC 1.0 (более поздние его версии впоследствии продавались другой компанией под именем PowerBASIC). На домашних компьютерах появились различные расширения Бейсика, обычно включающие средства для работы с графикой, звуком, выполнением DOS-команд, а также средства структурного программирования. Некоторые другие языки использовали хорошо известный синтаксис Бейсика в качестве основы, на которой строилась совершенно иная система (например, GRASS).

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

Вторую жизнь Бейсик получил с появлением в 1991 году Visual Basic от Microsoft. Этот язык напоминал оригинальный только синтаксисом, но был значительно более современным. Visual Basic и его варианты стали одним из наиболее часто используемых языков на платформе Windows. Позже был создан вариант под названием WordBasic, используемый в MS Word до появления Word 97. Visual Basic for Applications (VBA) был встроен в Excel 5.0 в 1993 году, затем в Access 95 в 1995-ом, а после и во все остальные инструменты, входящие в пакет Office — в 1997-ом. Internet Explorer 3.0 и выше, а также поставки Windows включали интерпретатор скриптового языка VBScript. В полный вариант пакета OpenOffice также включён интерпретатор Бейсика.

QBasic – это интегрированная среда разработки (IDE) для реализации языка программирования BASIC, основанная на QuickBasic. Исходный код, введенный в IDE, компилировался в промежуточную форму, которую интерпретировала IDE по мере необходимости.

Как и QuickBasic, QBasic – язык структурного программирования, поддерживающий подпрограммы и условные циклы. Нумерация строк программы упразднена и поддерживается только для совместимости; вместо нее введены переходы при помощи меток. QBasic имел ограниченную поддержку определяемых типов пользователя (структур) и нескольких простых типов.

QBasic предназначался для замены GW-BASIC. QBasic 1.0 включался в MS-DOS 5.0 и выше, Windows 95, Windows NT 3.x и Windows NT 4.0. Компания IBM перекомпилировала QBasic и включила в PCDOS 5.x, позже в OS/2 2.0 также была введена поддержка QBasic. QBasic 1.1 поставлялся с MS-DOS 6.x, и без изменений в Windows 95, Windows 98 Windows Me. Начиная с Windows 2000, компания Microsoft перестала включать QBasic в свои операционные системы.

QBasic был основан на ранней версии компилятора QuickBASIC 4.50, но не содержал ни компилятора, ни компоновщика. До MS-DOS 7 редактор MS-DOS требовал наличие QBasic. Программа "edit.com" просто запускала QBasic в режиме редактора.

В течение долгого времени QBasic обеспечивал современную интегрированную среду разработки, включающую отладчик с рядом особенностей (оперативная оценка выражений, модификация кода и т.д.). QBasic может выполняться почти под всеми версиями DOS и Windows, а при использовании эмулятора DOSBox может выполняться в ОС Linux, FreeBSD.

Microsoft QuickBASIC (сокращение QBasic некорректно, это совершенно другая реализация) – компилятор и интегрированная среда разработки для языка BASIC, который разрабатывался корпорацией Microsoft. QuickBasic создавался ориентированным на DOS, однако недолгое время существовала версия для Mac OS. QuickBASIC основан на GW-BASIC, но включает некоторые улучшения и расширения: добавлены пользовательские типы данных, улучшены структуры программирования, усовершенствована работа с графикой и работа с диском. Microsoft распространяла QuickBASIC как первую профессиональную систему разработки программ на BASIC.

QuickBASIC 1.0 была выпущена 18 августа 1985 и распространялась на одном пятидюймовом диске. С версии QuickBASIC 2.0 была включена среда разработки, и пользователи могли редактировать программу непосредственно в текстовом редакторе.

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

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

QuickBASIC 4.5 – последняя версия, выпущенная в 1988 году, однако разработка профессиональной системы разработки (PDS) продолжалась до появления последней версии 7.1 в октябре 1990. Версия IDE BASIC PDS 7.x была названа QuickBASIC Extended (QBX) и исполнялась только под DOS. Преемником QuickBASIC и Basic PDS стал Visual Basic для MS-DOS 1.0. Более поздние версии Visual Basic не включали версии для DOS, так как Microsoft ориентировалась на приложениях для Windows.

Подмножество QuickBASIC 4.5 было названо QBasic. QBasic включался в поставку MS-DOS 5 и в более поздних версиях, который заменил GW-BASIC. QBasic по сравнению с QuickBASIC имел ряд ограничений: включал только интерпретатор, существовало ограничение в его функциональности, создание программ ограничивалось определенным размером и т.д. Поскольку он не содержал компилятора, то не было возможности создавать исполняемые файлы, но программы, написанные на QBasic, могли компилироваться при помощи QuickBASIC 4.5, BASIC PDS 7.x, VBDOS 1.0.

Для ОС Macintosh QuickBASIC 1.0 был выпущен в 1988.Он работал только на System 6 и System 7 и требовал наличие ОЗУ объемом большим 1 Мб.

История BASIC, или Программирование для всех

22 февраля 1928 года в штате Иллинойс родился Томас Юджин Курц – американский программист. С 1956 г. он работал в знаменитом Дартмутском колледже (г. Ганновер, штат Нью-Гэмпшир), где вместе со своим коллегой, венгерским иммигрантом Джоном Кемени (1926–1993), создал язык программирования Бейсик и первую систему разделения времени.

И то, и другое задумывалось и создавалось одновременно, в 1963–1964 гг. Дартмутская система разделения времени (Dartmouth Time Sharing System) при работе с ЭВМ напоминала современную многозадачность. До этого все программы считались на больших машинах – мэйнфреймах, – которые были крайне дорогими, так что не каждый американский университет мог позволить себе купить компьютер, и программисту часто приходилось долго ждать своей очереди – только чтобы в результате обнаружить в программе ошибку, и после ее исправления снова занимать очередь на драгоценное «машинное время». При помощи же новоизобретенной системы можно было подключаться к одному мэйнфрейму при помощи нескольких персональных терминалов – а ЦПУ большой ЭВМ, при помощи специальных программ, распределял свое время таким образом, что пользователь при работе с ним практически не ощущал никакой задержки.

История BASIC, или Программирование для всех

За терминалом у мэйнфрейма (привычная картина 1970-х годов)

Благодаря такому нововведению менялся и сам способ взаимодействия с машиной: программу можно было сразу набирать на терминале (а не скидывать предварительно на перфокарты или перфоленту) – и сразу же проверять ее работу и при необходимости корректировать программный код. Как раз для этих целей, двое дартмутских ученых разработали и свое самое известное творение – язык BASIC (он же «Универсальный код символических инструкций для начинающих»). По словам Кемени, они хотели сделать язык настолько простым, «чтобы студенты могли использовать его уже после трех часов занятий». Язык программирования отличался простотой, мультиплатформенностью, универсальностью назначения и не требовал знания аппаратной части – короче говоря, был специально предназначен для студентов.

История BASIC, или Программирование для всех

Томас Курц (слева) и Джон Кемени намекают на мультиплатформенность своего TrueBasic

Впрочем, не только для студентов. Как раз в 1960-е годы, когда будущее научно-технического прогресса казалось безоблачным и ученые предрекали проникновение компьютерных знаний в самые широкие народные массы, владение языками программирования, необходимое для полноценного общения человека с машиной, представлялось такой себе «второй грамотностью». И BASIC на роль азбуки программирования подходил очень даже неплохо.

Конечно, многие из прогнозов полувековой давности практически сбылись, а персональные компьютеры заняли значительное место в нашей повседневной жизни, – и все же всеобщая компьютерная грамотность в старом смысле этого слова осталась недостижимой. А с развитием операционных систем и неуклонным ростом «дружелюбности интерфейса пользователя» все меньше и меньше контроля получает этот самый пользователь над поведением своего кремниевого помощника…

Нечто похожее, наверное, имело место и в фотографии: ее превращение из занятия профессионалов и немногих серьезных любителей в самое массовое хобби привело не столько ко всеобщему просвещению в области выдержки, экспозиции и прочих высоких материй фотоискусства и фототехники, – как о том когда-то мечтали специалисты, – сколько к безоговорочному триумфу пресловутых однокнопочных «мыльниц».

История BASIC, или Программирование для всех

Интерфейс советского персонального компьютера ДВК-1 (BASIC, загружающийся непосредственно из ПЗУ)

Тем не менее, свой «золотой век» БЕЙСИК пережил, пожалуй, в первой половине 1980-х годов, когда компьютеры наконец-то начали одомашниваться, и программы и игры распространялись даже не на 5-дюймовых дискетах, а… при помощи обычных печатных изданий – книг и журналов. Подешевев и значительно уменьшив свои габариты, ПК практически не изменили еще свой способ взаимодействия с человеком: каждый, даже самый неподготовленный пользователь не только мог, но и должен был естественным образом выступать сначала в качестве программиста, тестера и отладчика в одном лице, – а при желании даже художника и композитора! – и лишь затем уже наслаждаться беззаботной жизнью рядового «юзера» или геймера.

Одной из причин такого положения дел было появление на рубеже 1970–80-х годов целого зоопарка домашних ПК: Apple II и его братья, Tandy TRS-80, Atari 400, Commodore PET и Commodore VIC в США, BBC Micro, Oric и семейство Spectrum в Англии, чуть позже Агат, ДВК, БК, Радио-86РК в СССР – а также их не столь известные, но еще более многочисленные близкие и дальние родственники со всего мира.

История BASIC, или Программирование для всех

Перфолента с записью Altair BASIC

Выпускались они самыми разными компаниями в самых разных странах и, понятное дело, не были аппаратно совместимыми друг с другом – только что дебютировавший IBM PC был дороговат и не завоевал еще повсеместного признания среди домашних пользователей, а компьютеры производства Apple могли гордиться разве что званием «первых среди равных».

Зато практически все доступные на рынке модели работали на той или иной версии BASIC: Курц и Кемени принципиально отказались подавать заявку на патент по поводу своего изобретения – так что вариантов и диалектов языка скоро насчитывалось великое множество. Хотя триумфальное шествие BASIC по планете началось уже в 1975 г., когда предприимчивые молодые люди Пол Аллен и Билл Гейтс – уже не профессора, наподобие Курца и Кемени, а больше бизнесмены, чем программисты – разработали для первого домашнего ПК Altair 8800 Эда Робертса простой интерпретатор Altair BASIC, ставший пионерским продуктом их компании Micro-Soft.

В те времена включив свою домашнюю ЭВМ, пользователь оказывался один на один с командной строкой пусть и простейшего, но языка программирования. И хотя большинство ПК поддерживали вывод информации на магнитную ленту или даже на дискету, эту самую информацию сначала нужно было как-то ввести. И распространять программное обеспечение легче было не на дискетах и кассетах, по отдельности для формата каждой марки компьютера, а печатным текстом в таких вот небольших симпатичных книжках. Синтаксис BASIC был более или менее схожим во всех домашних ПК того времени – за исключением разве что мультимедийных возможностей, в отношении которых действовал принцип «кто во что горазд».

История BASIC, или Программирование для всех

А так выглядели «носители» игр (первая страница игры «Гробокопатель» Алана Рамси, Usborne Publ., 1983 г.). Налицо сценарий, иллюстрация, призванная настроить воображение пользователя на нужный лад (художник Роб МакКайг), собственно текст программы на BASIC для ввода в ПК – и даже объяснение того, что означает та или иная строка кода

Конечно, на современный взгляд такие игры никак не смотрятся: графическое оформление отсутствует как класс, в лучшем случае его заменяют символы псевдографики. Зато в то время воображение пользователя работало во всю – и благодаря своему невольному знанию BASIC, каждый домашний геймер мог настроить практически любой параметр игровой программы, добавить в нее звуковые эффекты или даже анимацию, если то позволяли аппаратные возможности ПК, – короче говоря, полностью изменить программный код по своему желанию.

История BASIC, или Программирование для всех

Эмулятор «Hand BASIC – CBM Flavor» на iPad

Эмблема языка Visual Basic

Язык программирования Basic был создан в 1964 году двумя профессорами из Dartmouth College - Джоном Кенеми и Томасом Куртцом для обучения студентов навыкам программирования. Язык получился настолько простым и понятным, что через некоторое время его начали применять и в других учебных заведениях.

В 1975 году, с приходом первых микрокомпьютеров, эстафету Basic приняли Билл Гейтс и Пол Аллен, основатели Microsoft. Именно они создали новую версию Basic для первых компьютеров "Альтаир" (MITS Altairs), способную работать в 4КБ оперативной памяти. Со временем именно эта версия и превратилась в один из самых популярных языков программирования в мире.

Развитие языка Basic

На пути к вершине славы у Basic было множество трудностей, которые он всегда с честью преодолевал, и когда появились первые персональные компьютеры IBM PC, именно он стал стандартом в программировании, но уже в виде GW-Basic. Потом был Turbo Basic, QuickBasic, Basic PDS, но всегда при разработке новой версии языка сохранялась совместимость с прежними версиями и программа, написанная для практически первого Basic, вполне (с незначительными изменениями) могла бы работать и в последующих версиях этого языка.

Предпосылки для новой системы программирования

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

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

Визуальная система программирования Visual Basic

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

Более того, Visual Basic позволял разработчикам создавать новые объекты-"кубики", которые также могли использоваться в программах наравне со стандартными. И хотя многие С-программисты тихо посмеивались над попытками Microsoft сделать простой и понятный инструмент разработки Windows-программ, Visual Basic начал свое победное шествие по миру, и ничто не могло остановить этот процесс.

Microsoft выбирает Basic

Последние барьеры упали в 1994 году с выпуском Visual Basic for Applications. Именно в это время, после включения VBA в состав Microsoft Office, Basic начинает превращаться в один из основных стандартов программирования для Windows. Для фирмы Microsoft язык Basic имеет особое значение, в свое время разработка варианта Basic для компьютера Altair 8800 положила начало трудовому программистскому пути ее основателей, Билла Гейтса и Пола Аллена.

Поэтому в свое время - в 1989 году, когда пришла пора распределить основные направления создания сред разработки на различных языках программирования между различными фирмами, Microsoft оставила за собой QuickBasic - среду разработки программ на Basic, отказавшись, к примеру, от дальнейшей работы над языком программирования Pascal, оставив его фирме Borland, которая, в свою очередь, остановила работы над своей версией Basic (впоследствии Pascal стал языком Delphi). Первоначально задумывавшийся как игрушка, Visual Basic от Microsoft невероятно быстро завоевал программистский мир. Его популярность обусловлена двумя причинами: относительной простотой и продуктивностью. Программы на VB работают медленнее своих аналогов на C/C++, но все же они достаточно быстры для многих деловых целей и требуют гораздо меньше времени на разработку.

Оконные методы в Visual Basic

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

Грамматическая простота Microsoft Basic

Visual Basic уменьшил число ошибок путем удаления некоторых скрытых элементов синтаксиса C/C++. Кроме специальных случаев, выражения ограничивались одной строкой кода, а переменные должны были объявляться и инициализироваться в отдельных строках кода. Операторы присваивания и сравнения использовали один и тот же символ, однако грамматика Visual Basic требовала, чтобы эти операторы применялись таким образом, чтобы их намерения были четко обозначены.

Возможно, самым важным было то, что отсутствовали указатели — требование Билла Гейтса, начиная с первых версий Microsoft Basic. Хотя указатели полезны, так как разрешают прямой доступ к памяти по любому адресу, их использование сопряжено с ошибками в том случае, если они применяются неаккуратно. Требование грамматической простоты Basic восходит к тому факту, что первоначально он был создан как язык для обучения: "Beginner's All-purpose Symbolic Instructional Code" (Многоцелевой символьный командный код для начинающих).

Дальнейшее развитие Visual Basic

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

При помощи VBScript и VBA (VB для приложений) можно писать сценарии для web-браузеров и автоматизировать приложения Microsoft Office. Более того, Visual Basic 6 можно использовать для создания элементов управления Active-X, работающих вместе с Internet Explorer, хотя это делается крайне редко, поскольку требуется, чтобы на машине клиента, работающего в Интернете, была установлена библиотека времени исполнения DLL VB.

Литература

Просмотры

34812 14 декабря 2019 г.

Читайте также: