Добавлен: 22.04.2023
Просмотров: 350
Скачиваний: 1
Определенные функции языка Perl получили широкое распространение в связи с развитием компьютерной сети Internet. Поэтому при дальнейшем рассмотрении данного языка основное внимание уделим использованию функций Rerl для программирования в области WWW[Николай Прохоренок - Разработка Web-сайтов с помощью Perl и MySQL, ,Питер , 2015 с.336].
Для удобства программистов множество регулярно требуемых функций в среде Perl реализовано в виде так называемых Perl-модулей. Эти модули "подключаются" к реализации языка и позволяют вместо разработки собственных функций для той или иной задачи вызывать библиотечные функции, созданные авторами модуля. Например, существуют модули для работы с графикой (сам по себе Perl не имеет никаких графических инструментов), модули для автоматизации обработки web-форм и взаимодействия с CGI. Общее количество Perl-модулей давно измеряется сотнями, но среди них есть несколько десятков, ставших более-менее стандартными.
Набор установленных (и доступных для пользовательских программ) на хостинг-площадке Perl-модулей часто определяется хостинг-провайдером. Впрочем, не так уж редко хостинг-провайдер позволяет клиенту устанавливать и свои дополнительные модули. Набор доступных Perl-модулей весьма актуален в тех случаях, когда при создании web-сайта планируется использовать готовое программное обеспечение на языке Perl. Дело в том, что для успешной работы этого программного обеспечения могут потребоваться Perl-модули, не установленные у хостинг-провайдера - и, как результат, программы не будут работать. Поэтому, прежде чем выбирать программное обеспечение для "запуска" на web-сайте, следует уточнить, что хостинг-площадка поддерживает требуемые модули. [Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
Важным преимуществом Perl является то, что вокруг этого языка уже много лет назад сложилось сообщество программистов, разрабатывающих публично доступные, бесплатные программы для решения различных задач. В том числе и программы для web-сайтов. Готовые решения оформляются как в виде отдельных Perl-скриптов (программ), так и в виде Perl-модулей. Например, подробнейший архив Perl-модулей, упорядоченный по типам задач, ими решаемых, можно найти на сайте CPAN.
Как известно, в основе Web-страниц лежит текст. Web-серверы общаются с браузерами при помощи текстового протокола НТТР (Hypertext Transfer Protocol). Именно текстовая ориентация во многом обеспечила гибкость, широту возможностей и успех WWW. Взаимодействие приложений в Web строится по принципу клиент/сервер. Клиентские браузеры запрашивают документы у Web-серверов - таких, как Apache. Диалог браузера с сервером определяется протоколом НТТР. В основном сервер просто пересылает содержимое некоторого файла, однако иногда Web-сервер запускает другую программу для отправки документа, которая может представлять собой HTML-текст, графическое изображение или иной тип данных. Диалог сервера с программой определяется протоколом CGI (Common Gateway Interface), а запускаемая сервером программа называется CGI-программой или CGI-сценарием.
Сервер сообщает программе CGI, какая Web-страница была затребована, какие значения были переданы в HTML-формах, откуда поступил запрос, какие данные использовались при аутентификации и многое другое. [Муссиано, Кеннеди.html и XHTML. Подробное руководство, 2002 г., 234 с.]
. CGI-программа может быть написана на любом из следующих языков: AppleScript, C++, Fortran, PHP, Perl, TCL, Visual Basic, языке командного интерпретатора UNIX (shell) и т.д. Поскольку при создании Web-страниц разработчики имеют дело с текстом, файлами, сетевыми коммуникациями и двоичными файлами, Perl подходит для Web-программирования.
2.8 Язык VRML
Язык VRML был задуман весной 1994 г. на первой ежегодной конференции World Wide Web в Женеве. Здесь в числе прочих обсуждались проблемы создания VR-интерфейсов для доступа к WWW и необходимость создания единого общего стандарта описания трехмерной сцены, включающей гиперсвязи по аналогии с HTML. Основными требованиями к языку являлись независимость от платформы, расширяемость и возможность работы по низкоскоростным каналам связи. Там же было предложено название VRML (Virtual Reality Markup Language). Впоследствии слово Markup было заменено словом Modeling, что отражает графическую природу языка. В качестве базы языка VRML был выбран урезанный формат текстового файла SGI Open Inventor, дополненный сетевыми возможностями. Формат Open Inventor позволял описать трехмерную сцену с графическими объектами, источниками света и текстурами. [Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
В язык была добавлена анимация. Ряд объектов, называемых Interpolator, позволял описывать заранее определенное движение, например полет птицы, движение робота или маятника часов. Стало возможным описывать изменение цвета объекта или создавать объекты, изменяющие свою форму. Языку была добавлена интерактивность.
Особо важное значение имела возможность задания поведения объекта с помощью языков программирования, в результате чего графические объекты стали «интеллектуальными», поскольку их поведение могло описываться сколь угодно сложными программами.
Спецификация языка позволила разработчику использовать различные языки программирования (Java, JavaScript и т.д.) [Итан Браун Web Development with Node and Express: Leveraging the JavaScript Stack ,Питер , 2017 с.209]. Открытость и расширяемость в сочетании с возможностью сетевого взаимодействия языка VRML 2.0 подготовили почву для создания интерактивных VRML-миров в Internet.
Язык VRML создавался как независимый от HTML, и для передачи файлов по Internet в нем предусмотрены те же самые протоколы. Поэтому концепции Internet и Web применимы и к VRML. Просмотр VRML-документов возможен с помощью VRML-браузера или HTML-браузера с дополнительным VRML-модулем. Унифицированный указатель ресурсов URL для VRML-документа выглядит так же, как указатель для Web-публикации, за исключением расширения. Для Web-документа используются расширения *.htm или *.html, а для VRML-документа - *.wrl, *.wrz или *.Flr.
Язык VRML позволяет создавать при помощи текстовых команд сложные трехмерные сцены на экране ПК. Эти команды описывают многоугольные объекты и специальные эффекты для имитации освещения, окружающей обстановки и для придания реалистичности изображению[Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
Для сценариев VRML подходит язык JavaScript, но для узла сценария допускается применение и обычных языков программирования. Сценарии для миров VRML чаще всего составляются на языке Java. Разработчики VRML предпочитают язык Java, потому что этот язык программирования ориентирован на Internet. Большинство поставщиков VRML-продуктов включают в свои комплекты браузеры для работы с Java.
VRMLScript - подмножество языка JavaScript, которое предусматривает непосредственно спецификация VRML 2.0. Хотя язык VRMLScript не пользуется такой широкой популярностью, как JavaScript, он достаточно полезен, в особенности потому, что предназначен специально для миров VRML.
В основе языка VRML лежат три основных понятия: форма, сцена и объект.
Формы представляют собой объемные выпуклые геометрические фигуры, для которых определены операции добавления к уже присутствующим в виртуальном мире объемным телам и вычитания из них. Операция добавления формы создает в пустом пространстве сплошное тело, соответствующее внесенной форме. Части добавляемой формы, попадающие в уже занятый объем пространства, не создают в нем новых граней или границ. При вычитании, наоборот, из тела удаляются части, соответствующие вычитаемой форме. Таким образом, формы играют роль элементов конструкции при построении виртуального мира.
Сценой называется создаваемое трехмерное пространство. Любая сцена может включать две различные части: «статическую» и «мобильную». Статическая часть сцены образуется добавлением объемных фигур из галереи форм или удалением частей объема уже имеющихся в сцене фигур при операциях вычитания форм.
Мобильная часть сцены образована объектами. Они также могут содержать статическую часть, взаимное положение фрагментов которой нельзя изменить. Однако положение, ориентация, пропорции и размеры объекта в сцене могут быть изменены.
Объект представляет собой как бы сцену в сцене, построенную в своей собственной системе координат, с другим, изменяемым пользователем началом отсчета, направлением и масштабом осей. Объекты могут включать в себя объекты-потомки, положение которых по отношению к статической части родительского объекта может изменяться. Операции изменения ориентации, размеров, положения, вырезания и удаления родительского объекта выполняются одновременно и для его потомков.
Совокупность объектов и их взаимную подчиненность в сцене можно наглядно отобразить в виде иерархической древовидной структуры. Все узлы дерева, за исключением узла сцены - корня, образуют ее мобильную часть, размеры и структура которой могут изменяться независимо от геометрических фигур статической части сцены[Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
Каждая грань объекта в виртуальном мире имеет набор свойств, описывающих ее материал:
Цвет. Пользователь может задать цвет любой грани. При этом вся грань будет окрашена в выбранный цвет не равномерно, а с учетом ее ориентации по отношению к источнику света в сцене.
Текстура. На грань можно наложить изображение. Текстура будет наложена на всю грань, с автоматическим повтором рисунка, если размеры грани больше размеров элемента изображения текстуры. При наложении текстуры цвет грани не виден.
Прозрачность. Можно установить коэффициент прозрачности материала грани. Например, если прозрачность материала 50%, то грань станет полупрозрачной и в окне будут видны как ее материал, так и предметы, расположенные позади нее. Установка параметра прозрачности в 100% сделает грань невидимой. Подбором прозрачности грани можно имитировать стеклянные поверхности и другие элементы сцены.
Объекты, описываемые VRML-программой, называются узлами (nodes). При создании трехмерных объектов можно использовать встроенные узлы, такие, как конусы, цилиндры, кубы и сферы. Описав форму объекта, задают текстуру, освещенность, положение камеры и трансформацию объектов.
Особенности VRML
Язык VRML (Virtual Reality Modeling Language) предназначен для описания трехмерных изображений и оперирует с формами, сценами и объектами, описывающими геометрические фигуры и их расположение в пространстве[Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
VRML-файл представляет собой обычный текстовой файл, интерпретируемый браузером. Поскольку большинство браузеров не имеет встроенных средств поддержки Vrml, для просмотра Vrml-документов может использоваться вспомогательная программа - Vrml-браузер, например Live3D или Cosmo Player.
2.9 Язык XML.
XML - это расширяемый язык разметки (Extensible Markup Language), разработанный специально для размещения информации в World Wide Web, наряду с HTML, который давно стал стандартным языком создания Web-страниц.[ Галактионов В.В. Расширяемый язык разметки XML (Extensible Mark-up Language): промышленный стандарт, определяющий архитектуру программных средств Интернет следующего поколения. Сообщение ОИЯИ, Р10-2000-44, Дубна, 2014.].
В отличие от HTML, вместо использования ограниченного набора определённых элементов вы имеете возможность создавать ваши собственные элементы и присваивать им любые имена по вашему выбору.
XML решает ряд проблем, которые не решает HTML, например:
Представление документов любого (не только текстового) типа, например, музыки, математических уравнений и т.д[Гасов В.М. Цыганенко А.М. Методы и средства подготовки электронных изданий Учебное пособие http://www.hi-edu.ru/e-books/xbook081/01/part-008.htm].
Сортировка, фильтрация и поиск информации.
Представление информации в структурированном (иерархическом) виде.
В зависимости от уровня соответствия стандартам документ может быть "верно сформированным" ("well-formed"), либо "валидным" ("valid"). Вот несколько основных правил создания верно сформированного документа:
Каждый элемент XML должен содержать начальный и конечный тэг (либо пустой тэг типа <TAG />, который может нести информацию посредством своих атрибутов).
Любой вложенный элемент должен быть полностью определён внутри элемента, в состав которого он входит.
Документ должен иметь только один элемент верхнего уровня.
Имена элементов чувствительны к регистру.
Есть три основных способа сообщить браузеру, как отображать каждый из созданных вами XML-элементов:
Каскадная таблица стилей (Cascading Style Sheet - CSS) или расширяемая таблица в формате языка стилевых таблиц (Extensible Stylesheet Language - XSL).
Связывание данных. Этот метод требует создания HTML-страницы, связывания с ней XML-документа и установления взаимодействий HTML-элементов с элементами XML. В дальнейшем HTML-элементы автоматически отображают информацию из связанных с ними XML-элементов.[ Галактионов В.В. Расширяемый язык разметки XML (Extensible Mark-up Language): промышленный стандарт, определяющий архитектуру программных средств Интернет следующего поколения. Сообщение ОИЯИ, Р10-2000-44, Дубна, 2014.].