Графические языки
Рассмотрим, как работает конструктор с графическим редактором:
· конструктор определяет характер очередного действия;
· конструктор вводит соответствующую команду в ЭВМ;
· графическая программа интерпретирует эту команду, т.е. разворачивает ее в последовательность команд процессора ЭВМ;
· затем эта последовательность команд выполняется;
· результат выполнения отображается на экране.
Таким образом, рассматриваемый способ характеризуется тем, что конструктор мыслит дискретными командами, а вся их последовательность (сценарий) заранее не определена и присутствует в его голове лишь как общий замысел, который уточняется и корректируется в ходе создания изображения. Таким образом, сценарий, т.е. необходимая последовательность команд графического редактора, формируется в конце создания изображения.
В графических редакторах имеются средства создания сценариев. Сценарий - это тоже последовательность команд графического редактора, но составленная заранее и записанная в виде файла. Это обычно текстовый файл, который называют скриптом (script) или пакетным файлом. Сценарий иногда называют макрокомандой. Последний термин – «макрокоманда» – широко применяется в любых типах программ.
Преимущество сценария в том, что его можно использовать многократно. Однако, составить сценарий значительно сложнее, чем работать в графическом редакторе, так как он редактируется вручную без мгновенного отображения на экране. Такая работа "вслепую" приведет к тому, что в сценарии могут остаться ошибки, которые после запуска сценария придется отыскивать в его тексте и исправлять.
Сценарий, написанный на языке команд графического редактора, можно рассматривать как частный случай программы на графическом языке программирования.
Программа - это тоже заранее составленный текст, который хранится на магнитном диске и может быть использован для генерации изображения. Технология составления и использования программы такая же, как и для сценария.
Отличие программы (в данном случае, программы работающей в графическом редакторе) от сценария состоит в том, что язык программирования обладает дополнительными возможностями по сравнению с системой команд графического редактора и позволяет выполнять более сложные действия и записывать действия более компактно.
Такие возможности характерны для любого языка программирования. К ним относятся:
· обращение из программы к подпрограммам (в сценарии аналогичный эффект может быть достигнут запуском из сценария других сценариев);
· компактная запись повторяющихся последовательностей действий - циклов;
· ввод данных пользователем в процессе выполнения программы (для сценария ввод данных должен осуществляться перед запуском сценария), а также вывод сообщений из программы;
· проверка выполнения разного рода условий и выбор направления действий в зависимости от результатов проверки.
Последние две операции не могут быть реализованы в сценарии. Именно они позволяют написать программу [4], которая в зависимости от данных, вводимых в диалоге с конструктором, генерирует ту или иную, каждый раз новую, геометрическую модель.
На рис. 3 для примера приведена геометрическая модель объекта (назовем изделие «Подставка») с формальными значениями параметров – D, D1, L …, предназначенная для формирования конкретной геометрической модели объекта с числовыми геометрическими параметрами.
На рис. 4 представлены некоторые из таких полученных объектов. Все они принадлежат целому классу геометрических объектов, названных «Подставка».
Формирование таких геометрических моделей может производиться как с помощью сценария, так и с помощью программирования.