Автор работы: Пользователь скрыл имя, 05 Октября 2011 в 19:56, курсовая работа
Цель исследования изучение Web – технологий, средств и языков создания web – приложений
Задачи исследования:
Рассмотреть информационные системы World Wide Web на основе языка Hypertext Markup Language и его расширений.
Описать клиентские и серверные технологии создания веб-приложений.
Раскрыть использование систем управления базами данных для Web - приложений
Введение 3
Основная часть 6
1 Информационная система WWW 6
1.1 HTML и его расширения 7
1.2 Программы для Интернет 8
2 Клиентские технологии 11
2.1 JAVA 11
2.2 JavaScript и Visual Basic Script 14
2.3. Приложения Macromedia Flash 16
3 Серверные технологии 17
3.5 Perl 17
3.6 Python 17
3.7 PHP 9
3.8 ASP 20
3.9 Microsoft .NET 20
4 Средства разработки баз данных для интернет 24
4.1 MySQL 24
4.2 Oracle 27
4.3 Microsoft SQL Server 29
Заключение 30
Глоссарий 32
Список использованных источников 34
Список сокращений 36
Приложения 37
Из
программ, предназначенных для выполнения
на сервере, следует упомянуть CGI-сценарии,
ISAPI-расширения и фильтры, а также
Java-сервлеты. CGI-сценарии, ISAPI-расширения
и Java-сервлеты выполняют роль дополнений,
расширяющих возможности веб-серверов,
и отличаются друг от друга особенностями
взаимодействия с серверами. ISAPI-фильтры
— программы несколько иного рода. Они
активно вмешиваются в работу сервера
и изменяют его поведение.
Технологии создания веб-приложений условно можно разделить на клиентские (то есть используемые веб-браузерами и другими веб-клиентами, например, офисными приложениями или клиентами средств мгновенной передачи сообщений) и серверные (то есть использующиеся на веб-серверах).
Клиентские
технологии применяются главным
образом для повышения
2.1
JAVA
Наибольшую известность приобрела Java [14] — это технология и язык программирования сетевых приложений, разработанный фирмой Sun Microsystems для систем распределенных вычислений.
Язык Java является универсальным объектно-ориентированным языком программирования, как, например, C++.
Программа на С++, предназначенная для работы в операционной системе UNIX, не сможет работать на компьютере под управлением Windows — ее нужно будет в большей или меньшей степени переделывать.
При работе в сети, объединяющей компьютеры под управлением Windows, OS/2, UNIX, FreeBSD, MacOS и других операционных систем, эта проблема является весьма существенной. Язык Java и призван решить ее.
С++ является языком компилирующего типа: программный продукт получается в виде готового исполняемого модуля, при этом формат исполняемого файла зависит от операционной системы.
Есть
и другой путь — языки-интерпретаторы:
специальная программа-
Для
пользователей важны также
аппаратная независимость (мобильность) за счет создания приложений в виде байт-кодов для некоторой виртуальной машины (рисунок В.1 приложения В) — каждая платформа интерпретирует эти байт-коды; благодаря введению компиляции потеря эффективности, присущая интерпретации, здесь менее значительна;
интеграция с браузерами;
используемые
программные объекты могут
Другими словами, в узле-клиенте достаточно иметь лишь браузер, все остальное можно получить по сети. Однако при этом обостряется проблема информационной безопасности. В связи с этим загружаемым по сети программам обычно запрещается обновлять и читать файлы, кроме тех, которые находятся на хосте самого аплета.
Программы, написанные на Java можно поделить на два типа: к первой группе относятся приложения Java, предназначенные для автономной работы под управлением специальной интерпретирующей машины Java. Реализации этой машины созданы для всех основных компьютерных платформ.
Вторая группа — это так называемые аплеты (applets). Аплеты представляют собой разновидность приложений Java, которые интерпретируются виртуальной машиной Java, встроенной практически во все современные браузеры.
Приложения, относящиеся к первой группе (мы будем называть их просто приложениями Java), — это обычные автономные программы. Так как они не содержат машинного кода и работают под управлением специального интерпретатора, их производительность заметно ниже, чем у обычных программ, составленных, например, на языке программирования C++. Однако не следует забывать, что программы Java без перетрансляции способны работать на любой платформе, что само по себе имеет большое значение в плане разработок для Internet.
Аплеты Java встраиваются в документы HTML, хранящиеся на сервере Web. С помощью аплетов вы можете сделать страницы сервера Web динамичными и интерактивными. Аплеты позволяют выполнять сложную локальную обработку данных, полученных от сервера Web или введенных пользователем с клавиатуры. Из соображений безопасности аплеты (в отличие от обычных приложений Java) не имеют никакого доступа к файловой системе локального компьютера. Все данные для обработки они могут получить только от сервера Web. Более сложную обработку данных можно выполнять, организовав взаимодействие между аплетами и расширениями сервера Web — приложениями CGI и ISAPI13.
Для
повышения производительности приложений
Java в современных браузерах
В результате общая скорость выполнения аплета Java увеличивается в несколько раз.
Автономные приложения Java работают под управлением специального интерпретатора (виртуальной машины Java), поэтому для их отладки вам также не потребуется сеть Internet.
Однако
есть одно важное обстоятельство —
аплеты, взаимодействующие с
Java-аплеты
доступны из HTML-документов (обращение
к ним через тег <applet>), хотя
могут использоваться и
Внутри Java существуют 3 основных семейства технологий [15]:
J2EE — Java Enterprise Editon, для создания программного обеспечения уровня предприятия;
J2SE — Java Standard Editon, для создания пользовательских приложений, в первую очередь — для настольных систем;
J2ME — Java Micro Edition, для использования в устройствах, ограниченных по вычислительной мощности, в том числе мобильных телефонах, PDA, встроенных системах.
На сегодняшний день релизом является версия 1.5 (5.0). Самым главным её преимуществом по сравнению с предыдущей версией (1.4) является введение понятия шаблонов (аналог C++) и синтаксиса «for each». Это позволяет избежать ошибок привидения типа ещё на уровне компиляции, что увеличивает производительность и, что самое главное, качество труда программиста.
Sun
Microsystems предлагает набор средств JDK (Java
Development Kit) для создания Java-программ.
2.2
JavaScript и Visual Basic Script
JavaScript — самый распространенный язык написания сценариев, используемый при создании динамических Web-страниц, совместимых с различными браузерами [12].
JavaScript является специализированным языком для создания программ, работающих исключительно под управлением браузера. Тексты этих программ, которые еще называют скриптами, размещаются прямо в HTML-документе, в специальных разделах. Благодаря такой встроенности JavaScript имеет больше возможностей для взаимодействия с различными элементами Web-страницы и с самим браузером. Кроме того, JavaScript, как и Java, является объектно-ориентированным языком и имеет широкие возможности.
JavaScript
— язык и интерпретатор этого
языка для генерации и
<SCRIPT LANGUAGE = "javascript"> <!- — . . . //- -> </SCRIPT> (*)
где <!- — . . . //- -> — текст в виде комментария. Браузеры, не имеющие JavaScript-обработчиков, просто игнорируют комментарий, а современные браузеры исполняют записанные в (*) вместо многоточия команды. В отличие от Java программы на JavaScript полностью интерпретируются в браузере.
Visual Basic Scripting Edition (обычно просто VBScript) — язык программирования компании Microsoft, предназначенный для создания скриптов. Он является подмножеством языка Visual Basic и широко используется при создании скриптов в операционных системах семейства Windows.
Скрипты на языке VBScript чаще всего используются в следующих областях:
автоматизация администрирования систем Windows;
серверный программный код в страницах ASP;
клиентские
скрипты в браузере Internet Explorer.
2.3.
Приложения Macromedia Flash
Еще одна очень популярная веб-технология, основанная на выполнении кода в клиентском приложении, — приложения Macromedia Flash. Macromedia Flash Player, как и виртуальная Java-машина, обладает ограниченными возможностями с точки зрения доступа к ресурсам клиентского компьютера. Так, приложения Flash не имеют доступа к файловой системе, за исключением служебного каталога Macromedia Flash Player, а доступ к внешним устройствам ограничивается микрофонами и видеокамерами. Доступ к сетевым ресурсам ограничивается доменом, с которого было получено данное приложение. Отметим, что, так же как и Java-аплеты, приложения Flash могут управляться с помощью кода JavaScript, присутствующего на той же странице.
Имеется и ряд других средств, реализованных обычно в виде так называемых модулей расширения (plug-in), представляющих собой исполняемый код. При этом современные браузеры обладают средствами ограничения возможностей, связанных с их загрузкой и выполнением.
Все перечисленные средства расширения функциональности HTML-страниц могут быть использованы и в динамических страницах, генерируемых серверными веб-приложениями, — подобные страницы могут содержать ссылки приложения Flash, аплеты.
Элементарные требования безопасности требуют, чтобы возможности, связанные с выполнением кода в веб-клиентах, могли быть существенно ограничены как минимум посредством средств администрирования клиентских приложений.
В этом случае любое более или менее серьезное приложение, основанное исключительно на применении клиентских технологий, в известной степени обречено на провал в силу того, что условия, необходимые для его функционирования, могут не соответствовать требованиям корпоративной информационной безопасности, принятым в той или иной компании. В этом одна из причин массового развития и широкого применения технологий, связанных с выполнением кода приложений на самих веб-серверах.
3.1
Perl
Помимо программ, выполняющихся на клиентской машине, возможна разработка приложений, выполняющихся на сервере. Одним их языков для создания таких приложений является PERL.
Перл унаследовал много свойств от языков Си, shell script, awk. Сегодня основной для разработчиков является пятая версия языка Perl, однако (на некоторых веб-серверах) продолжают использоваться программы (скрипты), написанные на четвёртой версии (из-за частичной обратной несовместимости). Фактически стандарт языка определяется реализацией интерпретатора.
С
2000 года идет разработка новой (шестой)
версии языка. В отличие от предыдущих
версий, разработчики планируют создать
четко определенный стандарт языка. В
настоящее время существуют экспериментальные
компиляторы Perl 6, но продолжается дальнейшая
дискуссия о новых правилах [13].
3.2
Python
Python — это интерпретируемый, интерактивный, объектно-ориентированный язык программирования высокого уровня. Поддерживает классы, модули (которые могут быть объединены в пакеты), обработку исключений, а также многопоточную обработку.