Basic что за программа

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

История создания и развития

Первая версия языка была выпущена в 1991 году. От прародителя — QuickBasic, его отличал привязка к графическому интерфейсу разрабатываемых программ. Это стало заметным новшеством, во многом определившим дальнейшее развитие языка. Вторым важным шагом для VB стал выход версии 3.0 в 1993 году.

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

В ней впервые появился компилятор, что положительно сказалось на скорости работы программ. Разработчики теперь могли создавать 16- и 32- разрядные приложения. Кроме того, в языке впервые появились классы. В версии VB 5.0 стали доступны пользовательские компоненты. Начиная с седьмой итерации, вышедшей в 2002 году, классический Visual Basic фактически заменяется на Visual Basic.NET.

Quick Basic. Основы программирования. Видеоурок 1. Введение. (Артём Кашеваров)

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

Разновидности Visual Basic

Сейчас в семействе VB есть несколько платформ, различающихся по назначению и содержанию.

Visual Basic Classic

По сути, устаревшая версия языка, прекратившая свое развитие в начале нулевых годов. Одновременно и плюсом, и минусом платформы является тесная связь с собственной IDE средой разработки и ОС Windows. Преимущества состоят в наличии отладчика, подсветке синтаксиса, подсказках и других функциях, облегчающих написание кода. Недостаток — в фактической неприменимости языка вне среды.

Visual Basic for Application

#

Версия VBA применяется для написания макросов (мини-приложений) внутри программного обеспечения для Windows — от продуктов MS Office до графического редактора CorelDraw. По синтаксису язык напоминает упрощенный классический VB, при этом он работает почти со всеми компонентами COM-Windows. Код на VBA не компилируется в EXE файлы, а работает только как внутренний компонент программы.

Visual Basic Scripting Edition

Скриптовая версия VB чаще всего используется в серверных сценариях Windows при автоматизации систем и в написании серверного кода для ASP страниц. В VBScript нет операторов для файловой системы. Все переменный в коде имеют смешанный тип Variant.

Visual Basic.NET

#

Объектно ориентированный язык, заточенный под работу с платформой .NET Framework и сильно зависящий от его библиотек. На самом деле, эта ветка имеет мало общего со стандартным VB шестой версии. За счет поддержки объектов, полиморфизма, статической типизации, конструкторов и других ООП функций на VB.NET можно писать объемные интерактивные приложения для Windows. В 2020 году Microsoft объявил о прекращении развития Visual Basic.NET, отдав приоритет другому прикладному языку программирования — C#.

JS Basics: что такое компьютерная программа?

eMbedded Visual Basic

Урезанная версия VBScript, используемая в ОС для портативных устройств и мобильных телефонов — Windows CE и Windows Mobile.

Применение VB

  1. Создание консольных приложений для ОС Windows.
  2. Разработка графических интерфейсов приложений в IDE среде.
  3. Написание макросов и подпрограмм для продуктов MS Office, Corel Draw, AutoCAD и других приложений.
  4. Создание простых игр с несложным визуалом — викторины, текстовые квесты и т. п. Проекты со сложной графикой на VB реализовать фактически невозможно.
  5. Веб-приложения, серверное программное обеспечение.
  6. Специальные программы для обработки научных данных, сложных вычислений и аналитики данных.

Кроме того, Visual Basic — неплохой вариант для обучения основам программирования. Он сочетает разные парадигмы построения кода, а графический инструмент позволяет создать интерфейс приложения по системе Drag and Drop, просто перемещая нужные элементы на экране.

Плюсы и минусы языка

#

Среди достоинств Visual Basic стоит отметить следующие моменты.

  1. Простота и высокая скорость разработки.
    За счет упрощенного синтаксиса и встроенного визуального графического редактора даже новичок сможет достаточно быстро собрать рабочее приложение на VB под Windows..
  2. Встроенная защита от ошибок.
    Приложения на Visual Basic дополнительно защищены от багов за счет указателей и разграниченного доступа к памяти. Минимизации ошибок также способствует удобный редактор кода с подсветкой синтаксиса и подстановкой команд.
  3. Строгая типизация.
    Точное указание типов переменных исключает в VB ряд ошибок, свойственных не строго типизированным языкам. В переменную, для которой указан числовой формат данных, никак не получится записать текстовую строку.
  4. Компиляция в P-код.
    Разработчик может скомпилировать программу не только в машинный, но и в P-код. В режиме отладки компиляция в P-код происходит автоматически. За счет этого код при исполнении можно приостановить для оперативного внесения изменений, не перезапуская компиляцию с самого начала.
  5. Использование WinAPI функций.
    Такая возможность расширяет функциональность приложений на VB и упрощает разработку.

Как и у других языков программирования, у Visual Basic есть свои недостатки.

  1. Заточенность под ОС Windows и Mac OS.
    У VB фактически отсутствует кроссплатформенность. Без сторонних средств ПО на этом языке можно написать только под Windows и Mac OS. Для упрощения разработки крайне желательно использовать среду Microsoft Visual Studio.
  2. Низкая скорость обработки данных.
    Библиотека runtime library, на которой завязаны многие функции языка, часто выполняет излишние действия по проверке и конвертации используемых типов переменных. Особенно критичным подобный подход становится при обработке крупных многоуровневых программ.
  3. Невозможность наследования реализации пользовательских объектов.
    В Visual Basic наследуются только интерфейсы компонентов, но не их полноценная реализация.

Особенности языка

Можно выделить несколько основных моментов, отличающих Visual Basic от других ОПП языков с C-подобным синтаксисом.

#

  1. Наличие drag and drop инструмента для создания и размещения форм в интерфейсе — окон, кнопок и т. п. По сути, приложение в VB можно собирать из разных элементов как конструктор.
  1. Уравнивание логических и цифровых переменных. Постоянная true в VB принимает значение -1, а ее противоположность, false — значение 0. Такой подход объясняется работой ячеек памяти.
  2. Наличие типа variant, применяемого для переменных, изначально объявленных без указания конкретного стандартного типа, как, например, integer или string. Оператор Deftype позволяет установить и другие типы по умолчанию, такие как DefInt, DefObj и другие. Чтобы отменить присвоенный по умолчанию тип нужно использовать специальный символ-суффикс в имени переменной.
  3. Автоматическое превращение целых чисел (int) в вещественные (double) при делении через оператор /. Обратный слеш () проводит усечение дробной части числа при делении.
  4. Определение нижней и верхней границы при объявлении массивов. Подобный механизм реализован и в других старых языках, таких как Pascal и Fortran. Оператор Option Basе позволяет выставить нижнюю границу массива в VB по умолчанию, но это может привести к ошибкам в программе. В версиях Visual Basic .NET и Script нижняя граница массива фиксируется на 0 или 1. В Visual Basic 6.0 доступны более низкие значения.
  5. Определение нижней и верхней границы при объявлении массивов. Подобный механизм реализован и в других старых языках, таких как Pascal и Fortran. Оператор Option Basе позволяет выставить нижнюю границу массива в VB по умолчанию, но это может привести к ошибкам в программе. В версиях Visual Basic .NET и Script нижняя граница массива фиксируется на 0 или 1. В Visual Basic 6.0 доступны более низкие значения.

Перспективы VB

Последние годы Visual Basic активно вытесняется более продвинутыми языками, в основном C++ и C#. В 2020 году разработчик языка — компания Microsoft — сообщила о прекращении развития Visual Basic.NET. Эта ветка VB по-прежнему применяется для поддержки уже существующих продуктов, но что-то новое на ней создается редко.

Visual Basic for Application все еще исполняет свои функции как прикладной язык для ПО от Microsoft, но на этом его применение и ограничивается. Серверный язык VBScript считается в целом устаревшим, хоть и используется для поддержки некоторых систем от Microsoft. Современная платформа для создания веб-сервисов ASP.NET мультиязычна, и многие программисты при работе с ней выбирают C#.

Примеры программ

Простейший пример программы для VB.NET 9 выглядит так.

Module Module1 Sub Main() Console.WriteLine(«Привет, Мир!») End Sub End Module

Такой код выводит на экран надпись “Привет, Мир!”

В Visual Basic for Application такая же программа будет выглядеть немного иначе.

Читайте также:
Cxaudmsg что за программа

Sub Hello() MsgBox («Hello, World!») End Sub

Этот код можно поместить во встроенный редактор макросов Microsoft Office Word, сохранить как новый макрос и запустить в открытом документе.

#

В VBA можно прописать и более сложную программу. Вот пример кода, выводящий на экран факториалы чисел от 0 до 10.

Sub Factorial() Dim x As Long Dim res As String x = 1 For i = 0 To 10 res = res «! /upload/medialibrary/5d1/6.png» alt=»#»>

Заключение

Visual Basic — язык программирования, предназначенный, в первую очередь, для создания программного обеспечения в операционной системе Windows. Классическая версия VB со временем была значительно переработана под работу с .NET Framework и заменена на Visual Basic.NET. Сейчас язык во многом уступает своему прямому конкуренту — C#, но до сих пор используется в некоторых программах.

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

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

BASIC. Кроссплатформенное ПО тогда и сейчас

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

Истоки языка

Еще не так давно BASIC был общепринятым языком домашних компьютерных систем. Причем это не всегда был один и тот же BASIC. Его команды и синтаксис отличались в зависимости от модели ПК, которой он оснащался, будь то Commodore, Atari, Texas Instruments, Sinclair или другие. К счастью, большая часть диалектов проистекала из наиболее популярной реализации, а именно Microsoft BASIC.

Корнями BASIC уходит в академическую сферу, где он изначально создавался как язык, который был бы удобен как для профильных студентов, так и для тех, кто обучался вне традиционных областей STEM (Науки, Технологии, Инженерии и Математики). Унаследовав ряд свойств от популярных языков 60-х годов, таких как FORTRAN и ALGOL, он получил широкое распространение в школьных системах разделения времени. Даже IBM приняли участие в его развитии, выпустив в 1973 году более совершенную версию VS-BASIC. Когда в 70-х годах начали появляться микрокомпьютеры, которые были невелики и одновременно доступны по цене, то вполне естественным для них стало использование именно BASIC.

Преимущество интеграции этого языка в подобные системы было очевидным и заключалось не только в том, что он уже был знаком многим потенциальным покупателям компьютеров, но также и в его возможности выполнять программы без предварительной компиляции. Это было большим плюсом, потому что компиляция требует приличного объема ОЗУ и хранилища, а этими характеристиками микрокомпьютеры тех лет похвастаться явно не могли. Вместо компилирования исходного кода интерпретаторы BASIC преобразовывали и выполняли код построчно, теряя таким образом скорость в угоду гибкости и пониженному потреблению ресурсов.

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

Но это было тогда, а что сейчас? Используют ли этот язык сегодня?

BASIC + джойстик = веселуха

Для начала предлагаю получше рассмотреть принцип действия этого языка. В качестве очень простого, но в то же время забавного, примера его использования мы разберем приложение для Commodore 64, которое перемещает по экрану стрелку, выводя при этом на дисплей ее координаты. В качестве устройства ввода используется джойстик, подключенный ко второму порту. В качестве ПО выступает Commodore BASIC 2.0, являющийся диалектом Microsoft BASIC.

10 S=2: X=150: Y=150: V=53248: GOTO 100 15 J=PEEK(56320): IF J=127 THEN 15 20 IF J=111 THEN POKE 56322,255:END 25 IF J=123 THEN X=X-S 30 IF J=119 THEN X=X+S 35 IF J=125 THEN Y=Y+S 40 IF J=126 THEN Y=Y-S 45 IF J=122 THEN Y=Y-S 50 IF J=118 THEN Y=Y-S 55 IF J=117 THEN Y=Y-S 60 IF J=121 THEN Y=Y-S 65 IF X=>252 THEN X=10 70 IF X=254 THEN Y=44 80 IF Y

Каждая строка вводится как есть, включая ее номер. Завершив написание кода, переходим на следующую строку, вводим RUN и жмем “Return” (или “Enter”, зависит от клавиатуры). При условии, что все было введено верно, код будет выполнен, и на экране мы увидим:

В этой потрясной игре мы перемещаем стрелку по экрану с помощью джойстика

Так что же в реальности делает код? Как и в любой программе BASIC, он начинает выполнение с первой строки, в данном случае 10. Здесь определяется несколько переменных, после чего с помощью команды GOTO происходит переход к строке 100. В цикле FOR мы выполняем POKE (то есть производим запись в аппаратный регистр) и повторяем это еще в нескольких адресах, обновляя тем самым дисплей на его изначальную конфигурацию. Здесь команда READ используется для считывания констант, определяемых DATA.

Многие из этих адресов памяти напрямую обращаются к видео адаптеру (в C64 это VIC-II). Когда мы используем PEEK на строке 15, происходит считывание содержимого адреса памяти 56322, который соответствует текущим входным значениям на втором порту джойстика. После этого мы проверяем состояние каждого входа с помощью этих значений битов и нужным образом подстраиваем стрелку (строка 90) вместе с ее координатами (строка 85).

Посвященная этой программе страница C64 Wiki включает побитовую версию сравнения. Она должна выполняться чуть быстрее ввиду меньшего количества строк кода. Однако по перемещению стрелки на экране заметить это будет сложно.

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

Интерпретация против компиляции

Знакомая многим картинка: QuickBasic IDE
Интерпретируемая природа BASIC на большинстве компьютеров была как преимуществом, так и недостатком одновременно. С одной стороны, он был очень гибок и позволял просто запускать программы, а также быстро их изменять, не требуя длительных циклов компиляции (как минимум на процессоре Z80 или 6502 с частотой < 10МГц). С другой стороны, ошибки в коде оставались незамеченными вплоть до момента выполнения программы интерпретатором. А это вело к такому же веселью при разработке, что и современные скрипты JS и Python, где код будет отлично выполняться, пока интерпретатор внезапно не выдаст сообщение об ошибке (это если повезет).

В случае BASIC данный казус обычно проявлялся в виде “ Syntax error on line <. >” . При этом прогон того же кода через компилятор все эти ошибки бы выявил. Такая особенность интерпретируемых программ означала, что эффективность легкого распространения кода в виде листингов в компьютерных журналах и справочных руководствах определялась качеством печати и навыками самого вводящего этот код программиста. К счастью, на C64 и аналогичных системах исправление ошибочно введенных строк реализовывалось очень легко. Достаточно было ввести ее повторно, нажать “Return”, и интерпретатор производил обновление.

BASIC сегодня

Хотелось бы сказать, что все отлично, но сегодня уже никто не достает из кладовых тот старый C64, чтобы на досуге написать программу BASIC. За исключением, конечно, увлеченных любителей винтажных систем. И все же стоит заметить, что жизнь BASIC не закончилась с эпохой Commodore и Atari, и позже в Microsoft были разработаны его обновленные версии Visual Basic, Visual Basic for Applications (VBA) и VB.NET. На последнем можно писать VB-код для среды выполнения .NET.

PureBasic Visual Designer

Помимо этого, в 2008 году Microsoft выпустили Small Basic, нацеленный на начинающих программистов, например студентов, ранее использовавших визуальный язык программирования вроде Scratch. Причем его не стоит путать со SmallBasic, являющимся открытым (под стандартной общественной лицензией) диалектом BASIC с сопутствующими интерпретаторами для современных платформ.

Диалекты BASIC также можно встретить во многих графических и программируемых калькуляторах от Yi, HP, Casio и других производителей, хотя многие из этих диалектов не совместимы напрямую с изначальным стандартом BASIC (ISO/IEC 10279:1991). В процессе своего развития этот язык перешел от обязательной нумерации строк к перемещению по коду с помощью меток, а также обрел новые техники программирования. Эти изменения были введены в его обновленную версию QuickBasic в 1985 году и остаются актуальными по сей день.

Читайте также:
Что за программа черепаха

Среди других реализаций можно выделить коммерческий PureBasic от Fantaisie Software, который предоставляет IDE и компилятор для ряда целевых платформ. TrueBasic, в свою очередь, является современным пакетом инструментов, включающим IDE, чей синтаксис больше приближен к FORTRAN. Разработан же он был самими создателями оригинального языка – Darthmouth BASIC.

Что касается современных открытых интерпретаторов и компиляторов BASIC, то к ним относится Chipmunk Basic, восходящий еще ко времени Apple Macintosh, а также GW-BASIC от Microsoft, чей код был раскрыт не так давно. Кроме того, вокруг этого языка сформирована здоровая OSS-экосистема. Если же ничто из этого вас не тронет, то еще есть Tiny BASIC, использующий синтаксис в форме Бэкуса-Наура, как описано в первом выпуске “Dr. Dobb’s journal” 1976 года. Несколько лет назад один из авторов Hackaday, Том Нарди, описал свой опыт переноса своего старого QuickBasic-проекта 90-х годов в современный формат с помощью QB64.

Подходящее применение

Становится очевидным, что BASIC не просто жив, но еще и повседневно используется в коммерческих формах, бесчисленных открытых проектах и деятельном сообществе увлекающихся ретро-компьютерами людей. Это конечно спорное заявление, но он по-прежнему годится в качестве языка для освоения программирования. Кроме того, благодаря более низким системным требованиям BASIC отлично подходит для создания встраиваемых приложений, что обычно делается на MicroPython и подобных языках. К примеру, несколько лет назад мы писали о микроконтроллере ARM, который поставлялся с интерпретатором BASIC на борту.

На GitHub также можно найти проекты, подобные UBASIC PLUS, который предназначен для STM32F0 и требует всего 8Кб ОЗУ и 64Кб флэш-памяти. Еще один проект для ARM и PIC32 (а также для DOS и Windows) – это MMBasic, требующий 94Кб флэш и минимум 16Кб ОЗУ.

BASIC развивался в эпоху, когда у домашних ПК было меньше памяти и хранилища, чем у сегодняшних микроконтроллеров за $5. В связи с этим он оказывается прекрасным нетребовательным к ресурсам языком для случаев, когда нужно использовать интерпретируемые скрипты, а не скомпилированные двоичные файлы, и избавляет от необходимости приобретать микроконтроллер с большим объемом ОЗУ и флэш-памяти.

А пользуетесь ли вы, дорогой читатель, какой-либо формой BASIC сегодня?

Если да, поделитесь в комментариях своим опытом и советами для тех, кто может заинтересоваться этим языком, будь то на настольном ПК, винтажных-системах или встроенных.

Источник: habr.com

Язык Бэйсик

Основы программирования 2.0

Язык Бэйсик (он же Бейсик, он же BASIC) входит в семейство языков программирования высокого уровня.

BASIC — это аббревиатура, которая расшифровывается так: Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих).

Язык Бэйсик

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

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

Бэйсик с момента создания многократно дорабатывался и усложнялся, повинуясь законам современного программирования. По этой причине к настоящему времени он уже утратил (по сравнению с первыми версиями) свою простоту. Хотя, даже с учётом этого, современный Бэйсик всё-равно остаётся относительно простым языком, по сравнению с такими языками, как, например, С++.

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

Готовых программ тогда почти не было. Поэтому под каждую задачу надо было создавать отдельную программу. И делать это на компьютерах тех лет, используя имеющиеся тогда языки программирования, было очень сложно (отчасти поэтому раньше языки программирования создавались для решения конкретных задач, например, ПРОЛОГ был ориентирован на создание систем с искусственным интеллектом, ФОРТРАН — для работы с математическими формулами в научных и инженерных вычислениях и т.п.).

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

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

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

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

  1. Язык должен быть простым в использовании и понятным для начинающих.
  2. Должен быть языком программирования общего назначения (а не специального, как, например, упомянутые выше Фортран и Пролог).
  3. Язык должен предоставлять возможность расширения функциональности, доступную опытным программистам.
  4. Язык должен быть интерактивным, то есть выполнять команды пользователя.
  5. Язык должен предоставлять однозначные и понятные сообщения об ошибках.
  6. Язык должен быстро работать на небольших программах.
  7. Язык не должен быть привязан к “железу” и не должен требовать от программиста понимания работы этого самого “железа”.
  8. Язык должен защищать пользователя от операционной системы (или операционную систему от пользователя — кому как больше нравится))).

При создании Бэйсика за основу были взяты частично Фортран II и частично Алгол 60. Первоначально Бэйсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов (мейнфрейм — это большой высокопроизводительный отказоустойчивый сервер).

Несмотря на то, что язык уже использовался на нескольких мини-компьютерах, его настоящее распространение началось с внедрения на микрокомпьютере Альтаир 8800.

Альтаир 8800

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

В 1975 году Microsoft (тогда это были лишь двое — Билл Гейтс и Пол Аллен, при участии Монте Давидова), выпустила Altair BASIC. Затем его версии появились на другой платформе под лицензией и скоро в использовании были уже миллионы копий и различных вариантов. Один из вариантов, Applesoft BASIC, стал стандартным языком на Apple II. Для операционной системы CP/M был создан диалект BASIC-80, который надолго опередил свое время.

Applesoft BASIC

Кстати, Билл Гейтс говорил, что Бэйсик — это его любимый язык программирования.

Наиболее бурно и успешно Бэйсик развивался в течение 1970-х и в начале 1980-х годов. В это время почти все персональные компьютеры имели собственный интерпретатор Бейсика, часто зашиваемый прямо в ПЗУ. В простейших компьютерах он даже выполнял функции операционной системы.

Практически все более мощные компьютеры также имели интерактивные Бейсик-системы. Было создано несколько новых версий Бейсика для платформы IBM PC и совместимых. Microsoft продавала Бейсик для MS-DOS/PC DOS, включая BASICA, GW-BASIC (модификация BASICA, не требующая «прошивки» от IBM) и QuickBASIC.

Компания Borland, получившая широкую известность благодаря Turbo Pascal (с которым она и вышла впервые на рынок) в 1985 году выпустила основанную на той же программной среде систему Turbo Basic 1.0 (его наследники впоследствии продавались другой компанией под именем PowerBASIC).

К концу 1980-х годов персональные компьютеры стали намного мощнее и предоставляли новые возможности (такие, как графический интерфейс пользователя). Использовать эти новые возможности в Бейсике было уже не так просто и не так удобно. Кроме того, появились недорогие компиляторы более продвинутых языков (таких как Паскаль и Си), которые, к тому же, имели навороченные по тем временам средства разработки и дополнительные библиотеки с готовыми стандартными подпрограммами (например, Borland Pascal с библиотекой Turbo Vision).

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

Особенности языка Бейсик

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

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

Читайте также:
Что за программа обмен с окружением

Старый программист

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

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

«Раздвинуть» строки было невозможно, если требовалось вставить новую строку между строками с соседними номерами, приходилось повторно вводить эти строки с другими номерами, чтобы обеспечить разрыв в нумерации (либо применять специальную команду RENUM, которая изменяла номера всех уже введённых строк с постоянным шагом).

Как вы понимаете, при создании более-менее сложной программы практически невозможно предугадать, сколько в ней будет строк и в каком порядке они будут следовать.

Поэтому для обеспечения последующего редактирования программы стало принято нумеровать строки с шагом 10 (а иногда и больше). Это позволяло в большинстве случаев без проблем вставлять новые строки без изменения номеров строк, которые были введены ранее.

Пример рассмотрим чуть позже, когда познакомимся с синтаксисом языка Бейсик.

Синтаксис языка Бейсик

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

Простейшая программа на Бэйсике:

10 PRINT “Hello, WORLD!”

Бэйсик — не чувствительный к регистру язык. То есть для Бэйсика слова PRINT и print — это одно и тоже. Это касается не только ключевых слов, но и имён переменных. Хотя некоторые реализации языка являются чувствительными к регистру полностью или частично (например, Liberty BASIC).

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

X = 100 ‘Числовая переменная X$ = “Hello” ‘Строковая переменная

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

Объявлять простые переменные не нужно. Просто в любом месте программы пишем имя переменной, и всё. Правда, массивы надо объявлять.

Ниже перечислены самые основные конструкции языка, которые были реализованы практически в любой Бейсик-системе конца 1970-х годов (многие из этих конструкций поддерживаются и современными реализациями языка Бэйсик):

LIST
Вывод на монитор текста программы в правильной последовательности строк.

RUN
Запуск текущей программы с первого оператора строки с самым маленьким номером.

REM
Комментарий. Текст, находящийся после ключевого слова и до конца строки, является комментарием. Многие интерпретаторы также поддерживают в качестве знака начала комментария одиночную кавычку ‘. Некоторые интерпретаторы допускают использовать слово REM, только если оно находится в самом начале строки.

INPUT
Выводит на монитор текст приглашения и ожидает, пока пользователь введёт значение и нажмёт ENTER.

PRINT
Выводит данные на монитор (текст и значения переменных).

CLS
Очищает экран.

DIM
Описание массива. В отличие от обычных переменных, массивы требуют предварительного объявления.

GOTO Метка
Команда безусловного перехода на Метку.

IF … THEN …
Обычный оператор ветвления. После IF размещается логическое условие, после THEN — оператор, который должен быть выполнен при истинности этого условия.

END
Завершение выполнения программы. Система выходит в интерпретатор и пользователю выдаётся приглашение на ввод команд.

SAVE
Команда интерактивного режима, которая сохраняет текущую программу в файле на внешнем носителе.

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

Пример программы на Бейсике:

10 CLS ‘Очистить экран 20 PRINT «Привет, МИР. » 30 X = 100 ‘Присвоить 100 переменной Х 40 INPUT «Введите число : «; Y 50 PRINT Y; » * «; X; » inter»> Интерпретаторы Бэйсик

Один из наиболее известных интерпретаторов языка Бэйсик — это QBasic от Microsoft. Много лет он бесплатно поставлялся вместе с операционными системами MS-DOS и Windows. QBasic имел неплохие по тем временам графические и звуковые возможности. Поэтому на QBasic создавались даже игры (один мой знакомый это делал — не то, что на картинке, но что-то типа того))).

Игра на QBasic

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

Вторую жизнь Бейсик получил с появлением Visual Basic от Microsoft. Но, несмотря на популярность, в 2001 году Microsoft отказалась от дальнейшей поддержки Visual Basic (если не ошибаюсь, последняя версия Visual Basic была 6.5) в пользу принципиально нового языка Visual Basic .NET, где язык был снова “перекроен” и “перешит”, ориентирован на кросс-платформенную технологию .NET, и в текущем состоянии практически совпадает по набору возможностей c языком C#. Отличия только в синтаксисе и ключевых словах.

Так Basic перерос из средства для создания программ любителями-непрофессионалами до полноценного средства создания программ.

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

Сколько людей, столько и мнений

Даже в свои лучшие времена (1970. 1980 годы) Бейсик подвергался жёсткой критике (впрочем, как и почти все другие языки программирования — критиковать у нас любят).

Конечно, у Бэйсика было немало недостатков. Но ведь он же таким и был задуман! Да, с недостатками. Но зато простой и доступный для понимания даже гуманитарию.

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

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

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

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

Язык Бэйсик (даже первые его реализации, такие как QBasic), вполне пригоден для обучения, потому что с моей точки зрения нет совершенно никаких проблем, при необходимости, выучить потом другой язык. Может быть в 60-е годы прошлого столетия это и было проблемой — не знаю (я родился в 1969). Но сейчас — нет.

К тому же сегодня и переучиваться особо не потребуется, так как можно создавать свои классные программы, например, на Visual Basic.

Директивы компилятора Директивы компилятора
Как это ни странно, но даже многие опытные программисты не используют директивы компилятора, считая их чем-то ненужным и бесполезным. А между тем, директивы компилятора — это очень классная штука. Если их умело применять в своих программах, то можно существенно сократить время на разработку и уменьшить количество рутинных операций. Подробнее.

Источник: info-master.su

>»>

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru