История возникновения и развития языка Basic — КиберПедия 

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

История возникновения и развития языка Basic

2022-10-29 24
История возникновения и развития языка Basic 0.00 из 5.00 0 оценок
Заказать работу

Язык программирования Basic (Beginner's All ‑ purpose Symbolic Instruction Code ‑ универсальный символический командный код для начи­нающих) разработан в 1965 г. сотрудниками Дартмутского колледжа под руководством Дж. Кемени и Т. Курца для обучения решению задач в ди­ало­го­вом режиме пользователями-непрограммистами.

В связи с переходом на персональные компьютеры возникла пробле­ма создания новой версии этого языка, которая была решена Биллом Гейтсом, основателем фирмы Microsoft, создавшим в 1975 г. язык второго поколения Basic-80.

Последней версией этого языка, работающего в среде DOS, является Microsoft Quick Basic.

В связи с переходом на Windows фирмой Microsoft были разрабо­таны новые версии третьего поколения объектно‑ориентированного языка программирования под названием Microsoft Visual Basic. Данный язык стал единым языком программирования для офисных пакетов Microsoft Office, расширяющим возможности этих пакетов и средств обработки данных, хранимых в базах данных с различными системами управления (СУБД), т.е. язык выполняет роль системного программного интегратора для этих пакетов и различных СУБД.

Средства современной последней версии Microsoft Visual Basic 6.0 прекрасно подходят для разработки приложений. При работе в Visual Basic нужно освоить интегрированную среду разработки IDE (Integrated Development Environment) Visual Basic, которая содержит много интегри­рованных инструментов, упрощающих процесс разработки приложений. В графической среде Visual Basic можно наглядно конструировать формы и управляющие элементы, объекты, шаблоны, нестандартные управляющие элементы. Имеется большое число различных менеджеров, мастеров и конструкторов (баз данных, отчетов, запросов, форм, среды обработки дан­ных и Visual Basic), автоматизирующих разработку приложений.

Язык Visual Basic 6.0 успешно конкурирует с другими популярными современными языками программирования Delphi и Visual C++, отличаясь от них большей простотой.

Отметим, что компиляторы с этого языка были разработаны и другими фирмами. Например, фирма Borland выпустила свою версию этого языка Turbo Basic, но большинство программистов отдают предпочтение именно Visual Basic фирмы Microsoft ввиду его явного преиму­щества перед другими версиями этого языка.

Устаревшие или редко используемые команды и функции Basic отсутствуют в учебнике. Дополнительное описание с примерами и пояснениями см. в [2-9]. Полное описание Quick Basic приведено в [2]. Полное описание Visual Basic можно найти в [3‑9]. Допол­нительные задачи и упражнения приведены в [1].

Общепринятые обозначения

Для описания команд, операторов, функций, методов, сценариев диалога и других элементов языка используются следующие общепри­нятые при описании языков программирования обозначения и сокращения:

[...]      ‑ не обязательная конструкция;

<...>    ‑ конструкция, которая указывается пользователем;

{...|...|...} ‑ список конструкций возможных вариантов для выбора;

...        ‑ повторение предыдущей конструкции требуемое число раз;

.../.../...  ‑ команды подменю, страниц, кнопок и других элементов диалога;

n, m, l  ‑ целочисленные выражения;

x$,y$,z$ ‑ строковые выражения;

x, y, z ‑ числовые (любого типа) выражения;

<номер пункта>.<порядковый номер рисунка в пункте> ‑ нумерация рисун­ка в пункте (рис. 6.4.1).

Значения по умолчанию подчеркиваются.

Конструкции языка, используемые только в версии Quick Basic, по­ме­чаются символами QB, а для Visual Basic ‑ VB. Разд. 4-14 содержат опи­са­ние только версии Visual Basic.

Справочная служба

Существуют два способа обращения к справочной службе из окна редактора программ:

F1  получение справки о нужном идентификаторе/опции на который указывает курсор в программе/меню или о выделенной кнопке на панели.

Shift+F1 ‑ выбор справки из оглавления ключевых идентификаторов (имен команд, констант, функций, процедур, переменных, объектов, свойств и др.) для Quick Basic.

^ I (Edit/ Quick Info) ‑ вывод информации о текущем объекте в VB.

^ J (Edit/ List Properties/ Methods) ‑ вывод списка свойств и методов в VB.

Доступ к справочной информации возможен и через главное меню.

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


Глава 2. Операторы

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

Rem  <комментарий>

В Quick Basic не допускается перенос однострочного оператора на следующую строку программы, а в Visual Basic перенос допускается в любом месте, в котором возможен пробел между элементами оператора; после пробела указывается символ подчеркивания (“_”).

Длина строки программы ограничена 255 байтами.

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

Существуют одно- и многостроковые (структурные) операторы. Допускается многоуровневая вложенность операторов. Для визуального выделения вложенности рекомендуется сдвигать вправо на 3‑5 позиций (делать левосторонний отступ) все команды следующего уровня относи­тельно текущего.

Объявление данных

     Оператор объявления простых переменных имеет вид:

{Dim| Public }<переменная>[As[<тип стандартный или пользователя>]]

       [,<переменная> [As [<тип стандартный или пользователя> ]]]...

Если переменная объявлена без указания ти­па, то предполагается универсальный тип (Variant). При объявлении всем чис­ло­вым переменным, полям, элементам массивов присваиваются пус­тые значения: 0, “”, #00.00.00#, False соответственно.

По типу области видимости переменных можно выделить типы:

· локаль­ные переменные доступны только в процедурах, в которых они объ­яв­ле­ны оператором Dim;

· переменные контейнера (фор­мы, модуля, класса), объявленные опе­раторами Dim или Private в секции (General)(Declaration) и дос­туп­­ные во всех процедурах контейнера;

· глобальные переменные дос­туп­­ные во всех процедурах приложе­ния, в котором они объяв­ле­ны оператором Public в секции (Ge­ne­ral)(Declaration) формы или модуля. Обращение к пе­ре­менной имеет вид: <имя модуля или формы>. <имя переменной> (Form1.K=2).

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

Существуют следующие основные типы данных: перемен­ные, запи­си, поля, массивы, константы, объектные и контейнерные переменные.

Переменные   характеризуются именем (идентификатором), типом, адресом и длиной (местоположение в оперативной памяти). Идентификатор  состоит из последовательности (не более 40 сим­во­­лов для форм и объектов, и 255 ‑ для переменных и типов) букв, цифр и знаков подчеркивания и начинается с буквы.

Тип  ‑ совокупность допустимых значений переменной. Все типы делятся на стандартные и нестандартные (пользовательские).

Стандартные типы   встроены в язык, не требуют опи­сания в программе и имеют полные и сокращенные (идентификатор) обозначения.

Типы данных

Тип Иден­ти­ ­фикатор Длина  в байтах Содержи­мое Область значений
Boolean   1 Логический True, False                               (VB)
Byte   1 Целое число от 0 до 255                              (VB)
Integer % 2 Целое число от -32768 до 32767
L ong & 4 Целое число от ‑2147483648 до 2147483647
Single ! 4 Вещественное число от -3,402823·1038 до -1,401298·10-45 для отрицательных чисел и от 1,401298·10-45 до 3,402823·1038 для положительных чисел
Double # 8 Вещественное число двойной точности от -1,79769313486232·10308 до -4,94065645841247·10-324 для отрицательных чисел и от 4,94065645841247·10-324  до 1,79769313486232·10308 для положительных чисел
Currency @ 8 Денежная сумма от -9223372036585477,5808 до 9223372036585477,5807  (VB)
Date   8 Дата и время от 01.01.100 до 31.12.9999     (VB)
String *n $ n Строка  любые n символов (n <= 1032)
Object     Объект Ссылка на объект                              (VB)
Variant   16+n Любые значения Любые значения, кроме Object   (VB)

 

Текущий тип переменной универсального типа Variant определяется ее значением. Пере­мен­ной данного типа можно присвоить десятичное число (типа Deci­mal) с количеством знаков до или после запятой от 0 до 28. Так как данные этого типа хранятся в символьном формате, то перед и пос­ле арифмети­чес­ких вычислений автоматически производятся внутренние пре­образования из строкового формата числа во внутренний числовой и обратно, что замедляет ра­боту програм­мы и увеличивает размер используемой памяти.

Сокращенное обозначение (идентификатор) типа указывается в кон­це имени пере­мен­ной, поля или функции и является частью имени. Обычно сокращенное имя используются для переменных, которые явно не объ­явлены и для функции с целью указания типа возвращаемого функцией резуль­тата (nds%=20: fam$=”Иванов”).

Тип переменной можно определить функцией VarType (п. 3.5).

Константы  ‑ это неизменяемые переменные без имени, которые вы­зываются по их значению, а не по имени. Десятичные константы запи­сы­­ваются в обычной арифметической форме с указанием десятичной точ­­ки в виде [{+|-}]n[.m] (12.1, 12, ‑123, ‑34.345).

Двоичные константы записываются в виде &n (&101101001), восьмерич­ные ‑ виде &On (&O12347), а шестнадцатеричные ‑ в виде &Hn (&H1FD).

Символьные константы заключаются в кавычках (“Иванов”).

Логические константы ‑ True (истина), False (ложь).

Константы-даты имеют вид: #месяц/день/год [часы:минуты[:секунды]]#.

Пример. Dim DayTime As Date DayTime=#2/10/99 15:16:47#.

Можно заключать даты в кавычки, если использовать установленный в системе формат даты и времени (“6.12.99”, “15:33”).

Язык допускает использование локальных переменных без их явного объявле­ния путем указания идентификатора типа в конце их имен. Од­на­­ко рекомендуется всегда их явно объявлять для контроля пра­виль­ности языком использования имен переменных и выявления ошибок, связанных с ошибочным написанием имен в командах. Обязательность объявления пе­ре­менных в VB можно установить командой Option Explicit  в разделе гло­баль­ных объявлений формы или модуля, а лучше ус­та­новить этот режим командой Tools/Options/Editor/Require Variable Declaration.

2.1.1. Определение типа пользователя ‑ Type

     Тип пользователя задается командой вида:

Type <имя типа>

<имя элемента> As <тип элемента>

        ...

      <имя элемента> As <тип элемента>

End Type

     Команда служит для определения нового типа пользователя, на кото­рый можно ссылаться после слова As при объявлении составных перемен­ных, например записей. В Visual Basic эта команда указывается в секции глобальных объявлений (General)(Declarations) модуля.

Объявление записи

     Для объявления записи используется команда:

{Dim | Public} <имя записи> As <тип пользователя>

     [,<имя записи> As <тип пользователя>]...

Запись ‑ группа логически связанных переменных, на­зы­­­вае­­мых по­ля­­ми. Перед объявлением записи определяется тип пользова­теля. Поля ана­­логичны перемен­ным, с тем отличием, что при обраще­нии к ним перед именем поля тре­бует­ся указание уточнителя поля в виде имени записи и точки. Полями записи могут быть и массивы, и записи.

Пример записи, которая содержит другую запись domadress.

Type adress                   ‘ тип пользователя adress ‑ запись с адресом

gorod As String * 30              ‘ город

ulica As String * 30            ' улица

dom As String * 20             ' дом

kvartira As String * 10        ' квартира

End Type                          ‘ конец типа adress

Type persona                ' тип пользователя persona‑запись о человеке

fam As String * 30         ‘ фамилия

domadress As adress ' запись с домашним адресом типа adress

End Type                    ' конец определения типа persona

Dim student As persona ' объявление записи student типа persona

student.fam = ”Иванов” ‘ заполнение полей записи

student.domadress.gorod = ”Екатеринбург”

student.domadress.ulica=”Ленина”

student.domadress.dom = ”13 корпус 2”

student.domadress.kvartira = ”123/B”      

Объявление массива

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

Команда объявления массива имеет вид:

{Dim | Public} <имя массива> (<индексы>) [ As [ <тип>]]

              [,<имя массива> (<индексы>) [ As [<тип>]]]...

<индексы> ‑ размерность массива в виде (N1 [, N2 ]...).

Ni ‑ индекс последнего элемента по i-й размерности. Размерность можно указывать и в виде n To k, где n/k ‑ начальное/конечное значение индекса.

Примеры объявления одномерных массивов.

Dim M1 (10) As Long, Fam (1 To 30) As String*40, Ur%(100)

Примеры объявления двумерных массивов.

Dim M2 (10,100) As Long, Famstud (5,30) As String*40, M2#(10,7)

Элементами массива/записи могут быть записи/массивы.

Пример записи с массивом Cena из двух элементов.

Type stovar              ' начало определения типа пользователя stovar

kt As Integer         ' код товара - целочисленное поле

nt As String *20    ' название товара - строка из 20 символов

cena(1) As Single  ' массив с оптовой и розничной ценой товара

End Type                  ' конец определения типа stovar

Dim zstovar As stovar 'объявление записи zstovar типа stovar

zstovar.kt=1:zstovar.nt=”Молоко”: zstovar.cena (0)=6.2: zstovar. cena (1)=8.1

Пример массива с элементами‑записями (см. пример из п. 2.1.2).

Dim mstudent(20) As persona 'объявление массива записей типа persona

mstudent(0).fam = ”Иванов”‘заполнение значениями первой записи массива

mstudent(0).domadress.gorod = ”Екатеринбург”

mstudent(0).domadress.ulica= ”Ленина”

mstudent(0).domadress.dom=”13 корпус 2”

mstudent(0).domadress.kvartira = ”123/B”

2.1.4. Объявление локальных статических переменных ‑ Static

     Команда имеет вид:

Static  <переменная> [(<индексы>) [ As <тип>]]

         [,<переменная> [(<индексы>) [ As <тип>]]...

Команда аналогична команде Dim (пп. 2.1.1-2.1.3), но переменные сох­ра­­ня­ют свои значения после выхода из программы, а Dim ‑ переменные заполняются пустыми значениями при повторном входе в программу.

2.1.5. Объявление именованных констант ‑ Const

     Команда имеет вид:

[Public| Private ] Const <имя константы -1> [As <тип >] = <выражение -1>

                       [,<имя константы-2> [ As <тип>] = <выражение-2>]...

Команда задает значение именованных констант, используемых вмес­то численных или символьных значений (Const koefnds=0.2).

В отличие от переменных кон­стан­­­ты нельзя изменить во время выпол­не­ния программы. В секции (General)(Declaration) модуля можно объявить глобальную константу, если указать Public.


Поделиться с друзьями:

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

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

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.057 с.