РЕАЛИЗАЦИЯ МОДУЛЯ ОБРАБОТКИ И ОТОБРАЖЕНИЯ СТРУКТУРЫ

РЕАЛИЗАЦИЯ МОДУЛЯ ОБРАБОТКИ И ОТОБРАЖЕНИЯ СТРУКТУРЫ. Модуль обработки и отображения структуры учебника реализован на языке Java, в качестве апплета.

В виду того, что Java является машинно-независимым языком, то данный модуль способен работать на любой аппаратной платформе. 4.1. Обоснование выбора среды программированияНа этапе подготовки задания на дипломный проект рассматривалось несколько возможных вариантов реализации данного модуля.

Сформулируем основные критерии, по которым производился выбор среды программирования для создания данного модуля. 1 Создание максимально возможного удобства в работе.

Для этого модуль должна иметь удобный и современный интерфейс пользователя. 2 Модуль должен интегрироваться с электронным учебником, чтобы при работе со структурой была возможность сразу же просмотреть интересующий элемент в учебнике.

В ходе последующего анализа в качестве языка для реализации модуля был выбран язык Java, а в качестве инструмента для разработки - пакет Java-Workshop 2.0 фирмы Sun Microsystems.

Данное решение основывалось на следующем.

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

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

Существует несколько вариантов для реализации подобного рода взаимодействия между программой и браузером. 1 Реализация модуля как программы с интерфейсом CGI. CGI - Common Gateway Interface является стандартом интерфейса связи внешней прикладной программы с информационным сервером типа HTTP, Web. Обычно гипертекстовые документы, извлекаемые из WWW серверов, содержат статические данные. С помощью CGI можно создавать CGI-программы, называемые шлюзами, которые во взаимодействии с такими прикладными системами, как система управления базой данных, электронная таблица, деловая графика и др смогут выдать на экран пользователя динамическую информацию.

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

Программа-шлюз может быть написана практически на любом языке программирования. Недостатки данного варианта очевидны. Этот вариант требует обязательной установки WWW-сервера, очень тяжело организовать нормальный интерфейс с пользователем, весь вывод в окно браузера осуществляется только командами HTML, что очень сильно усложняет реализацию и ограничивает возможности программы. Плюсом данного варианта является то, что CGI-программа за исключением интерфейса является полноценной программой, на которую не накладываются какие-либо ограничения из соображений безопасности. 2 Использование языков сценария JavaScript или VB Script.

JavaScript - новый язык для составления сценариев скриптов, разработанный фирмой Netscape. Этот язык по сути является подмножеством языка Java, но имеет свою специфику. Язык VB Script также является языком для создания скриптов, разработанный компанией Microsoft. Как следует из названия, в основу этого языка лег Visual Basic. Основным применением этих языков является создание интерактивных Web-страниц.

Текст скрипта записывается непосредственно в HTML страницу и исполняется браузером. Язык JavaScript поддерживается в браузерах Netscape Navigator начиная с версии 2.0 и Internet Explorer начиная с версии 3.0. VB Script поддерживается только в Internet Explorer начиная с версии 3.0. Данные языки функционально очень ограничены и ориентированы в основном на работу с документами HTML, создание пользовательского интерфейса и выполнение элементарных функций.

Полностью отсутствуют возможности работы с файлами, используемые структуры данных и возможные операции над ними слишком примитивны, чтобы позволить построить достаточно сложную программу. 3 Создание Java-апплета. Язык Java был задуман как машинно-независимый и объектно-ориентированный язык программирования для Internet. Так как язык HTML, используемый в качестве стандарта в Internet, не мог решить многих проблем, связанных с предоставлением пользователю качественно новых возможностей для работы в Сети просмотр страниц, содержащих видеоизображения и звук, управление просмотром и удобные графические средства для работы, то возникла необходимость в некотором унифицированном языке, одинаково интерпретируемом на различных аппаратных платформах. Первоначально в качестве такого языка хотели использовать С путем расширения его возможностей и адаптации к требованиям работы в сети. Но в процессе работы прояснилось, что ряд черт языка С не удовлетворяет требованиям языка для сети. Основным недостатком было явное распределение памяти и соответственно работа с указателями, что затрудняло бы использование программ на различных платформах. В результате был создан объектно-ориентированный машинно-независимый синтаксически схожий с С язык программирования в сети Java. Язык Java можно использовать для разработки программ двух типов самостоятельных приложений и апплетов.

Самостоятельное приложение создается как отдельная программа, выполняемая интерпретатором языка Java. Апплет - это программный код, выполняемый интерпретатором языка Java, встроенным в Web-браузер.

В настоящее время интерпретаторы языка Java встроены в наиболее популярные Web-браузеры, такие, как Netscape Navigator и Microsoft Internet Explorer.

Компилятор языка Java выполняет перевод программы в так называемый байт-код. Байт-код является машинно-независимым кодом, сформированным в соответствии со спецификациями JVM Java Virtual Machine. Интерпретатор языка Java выполняет скомпилированный байт-код, используя необходимые классы той аппаратной платформы, на которой он выполняется.

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

Язык Java предоставляет мощные средства для создания и обработки сложных структур данных. Новые браузеры используют сейчас наряду с интерпретаторами Java также динамические компиляторы, что значительно увеличивает скорость выполнения апплетов. Таким образом, последний вариант, то есть реализация модуля в виде апплета, наиболее удовлетворяет поставленным требованиям, поэтому выбор был остановлен на данном варианте. 4.2. Основные функции модуляМодуль обеспечивает выполнение следующих функций считывание файла со структурой электронного учебника, сформированного модулем формирования структуры проверка данной структуры на корректность, и в случае обнаружения некорректности отображение некорректного участка структуры отображение считанной структуры на экране в виде графа отображение списка исходных неопределяемых понятий поиск заданного элемента в графе по его названию возможность просмотра выбранного элемента непосредственно в электронном учебнике выделение подструктуры по заданному множеству исходных понятий. 4.3.