Слайд 2Понятие Интернет-приложения Web-приложение ‑ это web-система, позволяющая пользователям реализовать доступ к бизнес-логике
через браузер. Web-система ‑ это система гипермедиа, поскольку ее ресурсы связаны между собой. Термин «web» означает, что система рассматривается как набор узлов с перекрестными ссылками.
Слайд 3Кроссплатформенность веб-приложений Логика веб-приложения распределена между сервером и клиентом, хранение данных осуществляется,
преимущественно, на сервере, обмен информацией происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб-приложения являются межплатформенными сервисами. Преимущество Web-приложений заключается в том, что их клиентские части могут выполняться независимо от операционной системы данного клиента. Вместо того чтобы писать различные версии для Microsoft Windows, Mac OS X, GNU/Linux и других операционных систем, приложение создается один раз для произвольно выбранной платформы и на ней разворачивается.
Слайд 4Проблематика создания веб-приложений Однако различная реализация HTML, CSS, DOM и других спецификаций
в браузерах может вызвать проблемы при разработке веб-приложений и последующей поддержке. Кроме того, возможность пользователя настраивать многие параметры браузера (например, размер шрифта, цвета, отключение поддержки сценариев) может препятствовать корректной работе приложения.
Слайд 5Типы Интернет-приложений Web-приложения, которые работают на сервере, передавая через Интернет данные на
клиентские машины. Для их применения требуются Web-браузеры; Web-сервисы, которые позволяют приложениям обрабатывать их данные на сервере. При этом передача подлежащих обработке данных на сервер и возврат результатов осуществляется через Интернет; приложения с поддержкой Интернета ‑ автономные программы со встроенными механизмами, позволяющими их пользователям регистрироваться, получать обновления, а также предоставляющими доступ к справочной системе и другим вспомогательным службам через Интернет; одноранговые приложения ‑ автономные программы, использующие Интернет для взаимодействия с другими программными продуктами этого же типа.
Слайд 6Архитектура системы Под архитектурой системы понимается высокоуровневое представление архитектурно-значимых компонентов системы. В
этом смысле компонент представляет собой отдельную сущность с открытым интерфейсом. Архитектурно-значимые компоненты ‑ это те, которые входят в представление системы на самом высоком уровне. Обычно эти компоненты или их набор нельзя сгруппировать или объединить в пакет с другими аналогичными компонентами. Свойства отдельных компонентов будут зависеть от особенностей представления системы.
Слайд 7Архитектурный шаблон системы Существует широкий спектр продуктов и технологий, которые могут быть
частью архитектуры web-приложений. Архитектурный шаблон отражает фундаментальную структурно-организационную схему программных систем. Он представляет набор предопределенных подсистем, описывает спектр их обязанностей, а также определяет правила и рекомендации для организации взаимодействия между ними.
Слайд 8Архитектурные шаблоны web-приложений Шаблон Thin Web Client (на основе "тонкого" Web-клиента). Шаблон Thick
Web Client (на основе "толстого" Web-клиента). Шаблон Web Delivery (на основе механизма Web-доставки.
Слайд 9Тонкий веб-клиент Шаблон Thin Web Client (на основе "тонкого" Web-клиента) используется в
большинстве приложений Internet и предоставляет ограниченные возможности по управлению конфигурацией клиента. В распоряжении клиента должен быть только стандартный браузер, поддерживающий формы. Все операции, связанные с бизнес-логикой, выполняются на сервере. Этот шаблон больше всего подходит для Web-приложений, в которых клиент обладает минимальными вычислительными возможностями или не может управлять своей конфигурацией.
Слайд 10Толстый веб-клиент Шаблон Thick Web Client (на основе "толстого" Web-клиента) предполагает, что
значительная часть бизнес-логики выполняется на клиентской машине. Обычно для выполнения бизнес-логики клиентом используется DHTML, аплеты Java или управляющие элементы ActiveX. Взаимодействие с сервером также происходит через протокол HTTP.
Слайд 11Веб-доставка Шаблон Web Delivery (на основе механизма Web-доставки). При взаимодействии клиента и
сервера, кроме протокола HTTP, используются и другие протоколы, такие как IOOP (Internet Inter-Orb Protocol) и DCOM, которые могут применяться для поддержки системы распределенных объектов. В данном случае браузер функционирует как контейнерный модуль системы распределенных объектов
Слайд 12Виды web-серверов Различают статические и активные серверы Web. Если страницы сервера содержат
только статическую текстовую и мультимедийную информацию, а также гипертекстовые ссылки на другие страницы, то сервер называется статическим. Статический сервер Web не может служить основой для создания интерактивных приложений с доступом через Интернет, так как он не предусматривает никаких средств ввода и обработки запросов. Если страницы web-сервера изменяют своё содержимое в зависимости от действий пользователя, то такие серверы называют активными.
Слайд 13Способы реализации клиентской активности При разработке динамических web-сайтов в большинстве случаев целесообразно
разделять бизнес-логику между клиентом и сервером, чтобы добиться оптимальной производительности в условиях низкоскоростных каналов Интернета и лимитированных ресурсов Web-серверов. Например, предварительную обработку введенных данных, отправляемых серверу, имеет смысл выполнять на стороне клиента. Это позволит исключить повторные передачи неправильно заполненных форм. Графическое представление результатов запроса также стоит выполнять на стороне клиента, что существенно сократит объем данных, передаваемых по сети. Для реализации клиентской активности возможно применение сценариев JavaScript, VB Script, аплетов Java и элементов управления ActiveX.
Слайд 14Скрипты и плагины Для написания пользовательских расширений могут использоваться как скрипты (в
терминологии некоторых программ «макросы»), так и плагины (независимые модули, написанные на компилируемых языках; в некоторых программах они могут называться «утилитами», «экспортёрами», «драйверами»).
Слайд 15Преимущества скриптов Скриптовый язык предпочтительнее в случаях: Если нужно обеспечить программируемость без риска
дестабилизировать систему. Так как, в отличие от плагинов, скрипты интерпретируются, а не компилируются, неправильно написанный скрипт выведет диагностическое сообщение, а не приведёт систему к краху; Если важен выразительный код. Во-первых, чем сложнее система, тем больше кода приходится писать вручную. Во-вторых, в скриптовом языке может быть совсем другая концепция программирования, чем в основной программе — например, MMO-игра может быть монолитным однопоточным приложением, в то время как управляющие персонажами скрипты выполняются параллельно. В-третьих, скриптовый язык имеет собственный проблемно-ориентированный набор команд, и одна строка скрипта может делать то же, что несколько десятков строк на традиционном языке. Как следствие, на скриптовом языке может писать программист очень низкой квалификации — например, геймдизайнер своими руками, не полагаясь на программистов, может корректировать правила игры; Если требуется кроссплатформенность. Пример - JavaScript — его исполняют браузеры под разными ОС.
Слайд 16Преимущества плагинов У плагинов же есть три важных преимущества. Готовые программы, оттранслированные в
машинный код, выполняются значительно быстрее скриптов, которые интерпретируются из исходного кода динамически при каждом исполнении. Поэтому скриптовые языки не применяются для написания программ, требующих оптимальности и быстроты исполнения. Но из-за простоты они часто применяются для написания небольших, одноразовых («проблемных») программ. Полный доступ к любому аппаратному обеспечению или ресурсу ОС (в скриптовом языке для этого должен существовать написанный на машинном коде API). Плагины, работающие с аппаратным обеспечением, традиционно называют драйверами. Если предполагается интенсивный обмен данными между основной программой и пользовательским расширением, для плагина его обеспечить проще.
Слайд 17Виды скриптовых языков В плане быстродействия скриптовые языки можно разделить на языки
динамического разбора (JavaScript) и предварительно компилируемые (Perl). Языки динамического разбора считывают инструкции из файла программы минимально требующимися блоками, и исполняют эти блоки, не читая дальнейший код. Предкомпилируемые языки транслируют программу в байт-код и затем исполняют его. Некоторые скриптовые языки имеют возможность компиляции программы «на лету» в машинный код (например, JIT).
Слайд 18Понятие языка JavaScript Язык программирования JavaScript представляет собой скриптовый язык и предназначен
для создания интерактивных HTML-документов. Скри́птовый язык (язык сценариев) — язык программирования, разработанный для записи «сценариев», последовательностей операций, которые пользователь может выполнять на компьютере. Сценарии обычно интерпретируются, а не компилируются JavaScript - объектно-ориентированный язык разработки встраиваемых приложений, выполняющихся как на стороне клиента, так и на стороне сервера. Синтаксис языка похож на синтаксис языка Java — поэтому его часто называют Java-подобным. Клиентские приложения выполняются браузером просмотра Web-документов на машине пользователя, серверные приложения выполняются на сервере.
Слайд 19Структура языка JavaScript Структурно JavaScript можно представить в виде объединения трёх чётко
различимых друг от друга частей: ядро (ECMAScript). Спецификация ECMAScript описывает типы данных, инструкции, ключевые и зарезервированные слова, операторы, объекты, регулярные выражения, не ограничивая авторов производных языков от расширения их новыми составляющими. JavaScript, JScript и ActionScript являются расширением стандарта ECMA-262. объектная модель документа (Document Object Model или DOM), объектная модель браузера (Browser Object Model или BOM).
Слайд 20Библиотеки JavaScript Для обеспечения кросс-браузерности и высокого уровня абстракции при разработке веб-приложений
используются библиотеки JavaScript. Они представляют собой набор многократно используемых объектов и функций. Среди известных JavaScript библиотек можно отметить Adobe life, Dojo Toolkit, Extjs, jQuery, Mootools, Prototype, Qooxdoo.
Слайд 21Отладка сценариев JavaScript В JavaScript доступ к отладчикам становится важным при разработке
крупных нетривиальных программ, потому что в процессе разработки возникают разногласия с разными браузерами (в частности с DOM). Полезно иметь доступ к отладчику для каждого из браузеров, в которых будет работать веб-приложение. В настоящее время, Internet Explorer, Firefox, Safari, Google Chrome, а также Opera имеют отладчики сценариев. Internet Explorer имеет три отладчика: Microsoft Visual Studio является самым полным из трёх, следом за ним следует Microsoft Script Editor (компонент Microsoft Office), и, наконец, свободный Microsoft Script Debugger, который гораздо более простой, чем два других. Бесплатный Microsoft Visual Web Developer Express предоставляет ограниченную версию с отладочной функцией JavaScript в Microsoft Visual Studio. В восьмой версии в IE вместе с инструментами для разработчиков появился встроенный отладчик. В Opera также имеется собственный отладчик — Opera Dragonfly. Разработку веб-приложений в Firefox можно отлаживать при помощи плагина Firebug или отладчика Venkman. WebKit Web Inspector включает в себя отладчик JavaScript, в Safari от Apple.
Слайд 22Область применения JavaScript JavaScript в данный момент полностью занимает нишу браузерных языков. JavaScript
также находит применение в качестве скриптового языка доступа к объектам приложений. Платформа Mozilla (XUL/Gecko) использует JavaScript. Среди сторонних продуктов, например, Java, начиная с версии 6, содержит встроенный интерпретатор JavaScript на базе Rhino. Сценарии JavaScript поддерживаются в таких приложениях Adobe, как Adobe Photoshop, Adobe Dreamweaver, Adobe Illustrator или Adobe InDesign. JavaScript используется и для написания прикладного ПО. Одним из примеров является Mozilla Firefox, 57 % исходного кода которого написано на JavaScript JavaScript используется в AJAX, одной из популярных технологий, позволяющей сделать страницы более динамическими и обеспечить им дополнительный функционал.
Слайд 23Назначение клиентских сценариев JavaScript Оперативная проверка достоверности заполняемых пользователем полей форм HTML
до передачи их на сервер. Сценарии JavaScript способны обрабатывать данные, введенные пользователями в полях форм, а также события, возникающие в процессе манипуляций пользователя с мышью, копировать в окно браузера другие страницы HTML или изменять содержимое уже загруженных страниц. Создание динамических HTML-страниц совместно с каскадными таблицами стилей и объектной моделью документа. Взаимодействие с пользователем при решении "локальных" задач, решаемых приложением JavaScript, встроенном в HTML-страницу. В частности, сценарии JavaScript широко применяются для создания различных визуальных эффектов. Например, изменение внешнего вида элементов управления, над которыми установлен курсор мыши, анимация графических изображений, создание звуковых эффектов и т. д. Механизм локальной памяти Cookie позволяет сценариям JavaScript сохранять на компьютере локальную информацию, введенную пользователем. Например, в Cookie может храниться список товаров из Интернет-магазина, отобранных для покупки.
Слайд 24Обработка сценариев JavaScript Конструкции языка сценариев JavaScript встраиваются в страницы HTML и
исполняются (интерпретируются) под управлением браузера при загрузке страниц, а также при совершении пользователем определенных действий над объектами, расположенными в этих страницах. Встроить сценарий JavaScript в HTML-страницу можно несколькими способами
Слайд 251. Внутри тэга … Задать операторы языка внутри тэга-контейнера …языка HTML. Браузеры,
не поддерживающие какие-либо тэги HTML, их игнорируют, анализируя содержимое пропускаемых тэгов с точки зрения синтаксиса HTML. Это может приводить к ошибкам при отображении страницы. Поэтому операторы языка JavaScript помещаются в контейнер комментария :
Символы (//) перед закрывающим тэгом комментария --> являются оператором комментария JavaScript. Он необходим для правильной работы интерпретатора. Документ может содержать несколько тэгов обязательно, независимо от того, заданы или нет операторы внутри тэга. Связываемый внешний файл не должен содержать тэгов HTML и должен иметь расширение .js:
Слайд 273. Использовать выражения JavaScript в качестве значений параметров тэгов HTML. Эта процедура
аналогична процедуре встраивания числовых или символьных примитивов HTML. Элементы JavaScript также располагаются между амперсандом (&) и точкой с запятой (;), но должны заключаться в фигурные скобки { } и использоваться только в качестве значений параметров тэгов HTML. Нельзя использовать элементы JavaScript в тексте HTML. Они интерпретируются только тогда, когда расположены справа от параметра и задают его значение. Пусть определена переменная barwidth, и ей присвоено значение 75. Следующий тэг нарисует горизонтальную линию длиной в 75% от горизонтального размера окна браузера:
Слайд 284. Определить обработчик событий в тэге HTML Для совместимости с языками сценариев
в некоторые тэги HTML были введены специальные параметры обработки возникающих событий. Значениями этих параметров могут быть операторы языка JavaScript. Обычно в качестве значения задается имя функции, которая вызывается, когда происходит соответствующее событие, определяемое параметром обработки события. Имя параметра начинается с приставки on, за которым следует имя самого события. Например, параметр обработки события click будет иметь имя onClick. События в основном связаны с действиями, производимыми пользователем с элементами форм HTML. Поэтому чаще всего перехват и обработка событий задается в параметрах элементов форм, что позволяет проверить введенную информацию перед ее отправкой на обработку. Функция или процедура это именованная последовательность операторов, которая выполняет определенную задачу и может возвращать некоторое значение. Функция в JavaScript определяется оператором function, имеющем следующий синтаксис: function имя_функции ( [параметры] ) { [операторы JavaScript] [return значение] } Параметры, передаваемые функции, разделяются запятыми. Необязательный оператор return в теле функции (блок операторов, заключенный в фигурные скобки), определяет возвращаемое функцией значение. Определение необходимых функций следует осуществлять в тэге , так как все определенные в нем операторы сценария интерпретируются до отображения страницы, и, таким образом, будут известны в процессе отображения всей страницы.
Слайд 29Пример задания функции и ее вызова в процессе формирования документа
Demo
language="javascript">
Начинается отображение страницы, в которую внедрен сценарий вычисления функции
Слайд 31Поддержка браузерами На сегодняшний день поддержку JavaScript обеспечивают современные версии всех наиболее
часто используемых браузеров. При этом в полной мере ядро языка поддерживается браузерами: Mozilla Firefox версии 2 и выше, Opera версии 9 и выше. Объектная модель документа в настоящий момент имеет более ограниченную поддержку.
JavaScript позволяет потенциальным авторам вредоносного кода запускать его на любом компьютере
сети: для этого достаточно открыть на нём веб-страницу. Это обуславливает наличие двух принципиальных ограничений: JavaScript-программы выполняются в песочнице, в которой они могут выполнять только ограниченный круг действий, а не задачи программирования общего назначения (например, создание файлов, работа с сокетами), для JavaScript-кода применяется политика общего происхождения, в соответствии с которой скрипт, встроенный в страницу не может получить доступ к ряду свойств объектов другой страницы (в частности, к большинству свойств объекта document) при отличии в протоколе, хосте и номере порта этих страниц. Помимо этого, разработчики браузеров вносят дополнительные ограничения в ответ на имеющие место злоупотребления. Так появился, в частности, запрет на открытие окна, размер одной стороны которого меньше ста пиксел
Слайд 33Клиентские сценарии JScript и VBScript Браузер MSIE реализует собственную версию JavaScript, называемую
JScript. Помимо JScript, браузер MSIE способен работать с языком клиентских сценариев VB Script, который представляет собой подмножество Microsoft Visual Basic и функционально равноценен языку JavaScript. Преимуществом его применения для создания сценариев является возможность использования, с небольшими корректировками, ранее написанных процедур на языках Visual Basic и Visual Basic for Application. VBScript используется для написания сценариев клиента (в этом случае браузер должен иметь встроенный интерпретатор этого языка), а также для написания сценариев на сервере (в этом случае сервер должен поддерживать язык VBScript). Для создания сценариев клиента используется набор объектов, аналогичный набору объектов JavaScript. Применение VB Script для создания страниц Web-серверов, расположенных в Интернете, нецелесообразно, так как не все пользователи используют IE. Однако если технологии Интернета применяются в корпоративной интрасети и можно установить на компьютеры всех пользователей IE, то применение VBScript вместо JavaScript программистами VB заметно сокращает сроки и стоимость разработки.
Слайд 34Технология Java Технология Java включает в себя язык программирования и платформу, для
обозначения которых используется одно название — Java. Java – это объектно-ориентированный, распределенный, интерпретируемый, защищенный, архитектурно-независимый, переносимый, высокопроизводительный, многопоточный, динамический язык программирования высокого уровня. Программа на языке Java транслируется компилятором в специальный байтовый код — Java bytecode, называемый также J-кодом, для выполнения которого требуется интерпретатор Java. Таким образом, язык Java является одновременно компилируемым и интерпретируемым. Интерпретатор Java - это приложение, предназначенное для конкретной аппаратно-программной платформы: PC-Windows, PC-Linux, Mac, UNIX-машины. J-код не зависит от платформы. Это обеспечивает архитектурную независимость и переносимость программ на языке Java. Байтовый код Java можно рассматривать как набор машинных команд для некоторой виртуальной машины, реализуемой интерпретатором. Он может исполняться в любой среде, в которой выполняется виртуальная машина Java.
Слайд 35Классы Java Основными единицами, из которых строится программа Java, являются классы. Классы
образуют иерархическую древовидную структуру, лежащую в основе объектно-ориентированной модели языка. Класс представляет собой совокупность данных и методов для их обработки. Метод в терминологии объектно-ориентированной модели является синонимом процедуры или функции. На базе уже существующего класса может быть определен новый класс, являющийся подклассом своего предшественника. Исходный класс является родительским классом или надклассом для своего подкласса. Подкласс наследует у родительского класса коллекцию данных и методов. Кроме них он может содержать собственные данные и методы.
Слайд 36Создание Java-программ Класс определяет целый тип данных. Конкретный экземпляр этого типа называется
объектом. Написание Java-программы заключается в создании нового класса или совокупности связанных между собой классов, то есть в определении набора данных, описывающих решаемую задачу, и в конструировании методов, реализующих обработку этих данных. При этом для порождения новых классов может использоваться существующая базовая коллекция классов. Исходный текст на языке Java, составляющий описание класса, сохраняется в файле, имя которого имеет расширение JAVA. Этот файл компилируется в J-код и сохраняется в файле с тем же именем и расширением CLASS. Скомпилированные классы Java в виде J-кода могут храниться локально на компьютере или распределенно в сети и динамически загружаться выполняющимися приложениями по мере необходимости.
Слайд 37Платформа Java Платформа Java состоит из виртуальной машины и интерфейса прикладного программирования
Java API. Виртуальная машина предназначена для выполнения J-кода на различных платформах. Интерфейс прикладного программирования Java представляет собой большую коллекцию классов в формате J-кода, сгруппированных по своему назначению в отдельные пакеты. Список имеющихся пакетов занимает несколько страниц текста, и каждый из пакетов содержит коллекцию классов. Для работы с такой сложной структурой используется специальная схема именования пакетов и классов, напоминающая доменную систему имен (DNS). Например, имя java.iang определяет пакет, содержащий базовые классы самого языка Java. Имя java.iang.object определяет класс object внутри этого пакета. Пакеты, имена которых начинаются со слова java, составляют основу интерфейса прикладного программирования и входят в состав любой платформы Java. Кроме основной части API существуют стандартные расширения для работы с трехмерной графикой, анимацией и т. д.
Слайд 38Инструменты создания Java-приложений Для создания Java-программ необходим набор средств разработчика Java Development
Kit (JDK), включающий в себя базовую коллекцию классов, компилятор javac, отладчик jdb, виртуальную машину java для выполнения готовых приложений и программу просмотра аплетов appietviewer. Существуют варианты набора JDK от фирм Sun и Microsoft и, кроме того, визуальные средства разработки фирм Microsoft, IBM, Symantec.
Слайд 39Eclipse Eclipse — свободный фреймворк для разработки модульных кроссплатформенных приложений. Разрабатывается и
поддерживается Eclipse Foundation. Платформа Eclipse создана для построения интегрированных сред разработки (IDE). Она может использоваться для создания различных сквозных вычислительных решений для множества сред выполнения программ. Eclipse — в первую очередь полноценная Java IDE, нацеленная на групповую разработку, снабжённая средствами для работы с системами контроля версий. Второе назначение Eclipse — служить платформой для разработки новых расширений (чем и завоевал популярность — любой разработчик может расширить Eclipse своими модулями). Множество расширений дополняет Eclipse менеджерами для работы с базами данных, серверами приложений и др.
Слайд 40Использование аплетов Java для создания динамических HTML-документов В среде Java существуют два
основных типа программ: приложения (application) и аплеты (applets). Приложение — это самостоятельная программа, для выполнения которой требуется только наличие виртуальной машины Java. Аплет — это программа, которая предназначена для выполнения в составе Web-браузера или специальной программы просмотра аплетов. Java-аплеты — это еще один метод создания динамических HTML-документов. Аплет создается, компилируется и сохраняется на Web-сервере. В HTML-документ, публикуемый на сервере, при помощи специального тэга помещается ссылка на местоположение аплета. При получении документа с сервера браузер загружает аплет и начинает его выполнять. Такой подход к созданию динамических документов прямо противоположен подходу, который используется в программировании интерфейсов CGI: апплет выполняется на стороне клиента, а CGI-сценарий — на стороне сервера. Аплеты Java, используются наряду с клиентскими сценариями для организации активности на стороне клиента. Аплеты Java применяются для организации визуальных и звуковых эффектов, а также ввода и предварительной обработки данных перед отправкой их на сервер, а также для представления полученных от сервера данных в графическом, табличном или каком-либо другом виде.
Слайд 41Безопасность аплетов Аплеты выполняются под управлением браузера и не имеют доступа к
локальным ресурсам компьютера. Однако они способны взаимодействовать с расширениями сервера CGI и ISAPI, а также читать файлы с того Web-сервера, с которого они были загружены. Аплет не может: осуществлять операции чтения-записи в локальной файловой системе, то есть читать и изменять файлы, просматривать содержимое каталогов, создавать, удалять, переименовывать файлы и каталоги; устанавливать сетевые соединения с другими компьютерами, кроме компьютера, с которого он был загружен; запускать на выполнение другие программы на компьютере, на котором он выполняется; использовать библиотеки других языков программирования, изменять системные параметры. Для проверки соблюдения правил безопасности существует специальный класс java.iang.SecurityManager. Экземпляр этого класса выполняется в составе виртуальной Java-машины браузера.
Слайд 42Технология ActiveX Элементы управления ActiveX— это самостоятельные программные компоненты, которые можно использовать
в разрабатываемых приложениях для реализации необходимых функциональных возможностей. Элементы управления ActiveX создаются с использованием технологии Component Object Model (COM — Компонентная объектная модель), разработанной фирмой Microsoft, и не являются самостоятельным приложением — они выполняются только в приложении, которое позволяет встраивать элементы управления ActiveX, являясь, тем самым, для них неким контейнером.
Слайд 43Контейнеры для элементов ActiveX Элемент управления ActiveX представляет собой небольшую программу, которой
браузер выделяет на странице определенный участок прямоугольной формы. В пределах своего участка орган управления полностью отвечает за перерисовку экрана и взаимодействие с пользователем. Не всякое приложение может быть контейнером для элементов управления ActiveX. Оно должно поддерживать технологию СОМ и предоставлять возможность манипулирования встраиваемыми компонентами. Многие приложения фирмы Microsoft позволяют широко использовать элементы управления ActiveX либо для расширения функциональных возможностей самого приложения, либо для быстрого создания новых приложений, использующих элементы управления ActiveX в качестве строительных блоков. К подобным приложениям можно отнести Microsoft Visual Basic, Microsoft Access, Microsoft Internet Explorer и некоторые другие.
Слайд 44Технология COM Технология СОМ позволяет использовать объекты со своими свойствами, методами и
событиями, которые создаются не во время выполнения программы, написанной на каком-либо объектно-ориентированном языке программирования, а существуют в виде отдельных программных единиц, называемых компонентами. При включении подобного объекта-компонента в тело разрабатываемой программы он раскрывает свои свойства и методы, которые можно получать или устанавливать, а также выполнять.
Слайд 45Повторное использование ActiveX-элементов Для реализации какой-нибудь функциональной возможности с помощью элемента управления
ActiveX, например отображения дерева каталогов, программист может разработать свой элемент управления ActiveX, а может воспользоваться одним из многочисленных элементов управления ActiveX, разработанных и распространяемых другими фирмами.
Слайд 46ActiveX на стороне клиента Элементы управления ActiveX можно использовать как на стороне
сервера, так и на стороне клиента. В последнем случае их применяют для решения тех же задач, что и аплеты Java: реализация полос прокрутки, раскрывающихся меню и других визуальных элементов управления, которые средствами HTML создать нельзя; прием обработка и вывод данных от пользователя или серверного компонента, с последующим построением динамически меняющихся диаграмм, решение оформительских задачи - например, покрытие выделенного им участка узором, плавным переходом цветов, движущимся текстом или изображением. Дополнительно они предоставляют неограниченный доступ к ресурсам локального компьютера. Возможность доступа элементов управления ActiveX к локальным ресурсам компьютера имеет не только преимущества, но и недостатки.
Слайд 47Встраивание элементов управления ActiveX в страницу Для встраивания в HTML-страницу внешних объектов