Автор работы: Пользователь скрыл имя, 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
Питон относится к классу языков с динамической типизацией, обеспечивает «сборку мусора» и удобные высокоуровневые структуры данных, такие как словари (хэш-таблицы), списки, кортежи. Питон обладает простым и мощным синтаксисом.
Интерпретатор Питона существует для большинства распространённых платформ. Он распространяется свободно под очень либеральной лицензией [9], позволяющей использовать его без ограничений в коммерческих приложениях. Текущая версия 2.5 вышла 19 сентября 2006 года.
Питон портируем и работает почти на всех известных платформах — от КПК до мейнфреймов. Существуют порты под Windows, все варианты UNIX (включая Linux), Plan 9 , Mac OS и Mac OS X, Palm OS, OS/2, Amiga, AS/400 и даже OS/390 и Symbian.
При этом, в отличие от многих портируемых систем, на каждой платформе Питон поддерживает все характерные для данной платформы технологии (например, Microsoft COM15/DCOM16). Более того, существует специальная версия Питона для виртуальной машины Java — Jython, что позволяет интерпретатору выполняться на любой системе, поддерживающей Java, при этом классы Java могут непосредственно использоваться из Питона и даже быть написанными на Питоне. Не так давно началась разработка системы, предназначенной для более полной интеграции с платформой .NET — Iron Python.
Как и любой интерпретируемый язык, Питон обладает одним недостатком — сравнительно малой скоростью выполнения программ, однако этот недостаток компенсируется уменьшением времени разработки программы — считается что на Питоне программист может решить задачу в среднем в 3—5 раз быстрее чем на Си++ или Java.
Впрочем, в последних версиях программы на Питоне выполняются значительно быстрее, чем в предыдущих. А сохранение байт-кода позволяет не тратить лишнее время на компиляцию кода заново при каждом запуске, в отличие, например, от языка Perl. Кроме того, существует специальная библиотека psyco [1], позволяющая оптимизировать выполнение некоторых программ, после чего скорость их выполнения можно сравнивать с программами на Си.
Интерпретатор
довольно большой по размерам и более
требователен к ресурсам, чем Tcl, Forth,
LISP или Lua, что ограничивает его применение
во встроенных системах. Тем не менее Питон
нашёл применение в КПК и некоторых моделях
мобильных телефонов.
3.3
PHP
В настоящее время одним из самых популярных языков написания сценариев, выполняющихся на сервере, является PHP. Этот язык позволяет разрабатывать высокопроизводительные Web-сайты любого масштаба и любой категории сложности [6].
В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP.
PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п.
Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя.
Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения.
Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript.
Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.
Ныне
PHP используется сотнями тысяч разработчиков.
Несколько миллионов сайтов сообщают
о работе с PHP, что составляет более
пятой доли доменов Интернета.
3.4
ASP
ASP17 — это мощная технология от Microsoft, позволяющая легко разрабатывать приложения для WWW. ASP работает на платформе Windows NT и IIS (Internet Information Server). ASP — это технология, позволяющая подключать программы к Web-страницам. Основа успеха ASP — простой скриптовый язык (Visual Basic Script или Java Script) и возможность использования внешних COM-компонент.
Файлы asp — это обычные текстовые файлы, содержащие исходные тексты программ. Они хранятся на сервере. Когда браузер клиента запрашивает файл, то asp-файл интерпретируется сервером, на выходе производится HTML-код. Этот HTML посылается клиенту.
Собственно программы пишутся на любом скриптовом языке, который установлен в системе. По умолчанию поддерживаются VBScript и JavaScript. Можно доустановить другие (например, Perl). Если ничего специально не указывать используется VBScript.
Технология
ASP получила своё развитие в виде ASP.NET
— новой технологии создания веб-приложений,
основанной на платформе Microsoft .NET [7].
3.5
Microsoft .NET
.NET (дот-нет) — программная технология, предложенная фирмой Microsoft в качестве платформы для создания как обычных программ, так и веб-приложений. Во многом является развитием идей и принципов, заложенных в технологии Java.
Одной из основных идей .NET является совместимость различных служб, написанных на разных языках.
Например, служба, написанная на C++ для .NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследующий от класса, написанного на Visual Basic .NET, а исключение, выброшенное методом, написанным на C#, может быть обработано в Delphi. Каждая библиотека (сборка) в .NET имеет сведения о своей версии, что позволяет устранить возможные конфликты между разными версиями сборок.
.NET — кросс-платформенная технология, однако в настоящее время существует реализация для платформы Microsoft Windows, FreeBSD (от Microsoft) и ограниченный вариант технологии для ОС Linux в рамках свободных проектов Mono, DotGNU.
.NET делится на две основные части — среда выполнения (по сути виртуальная машина) и инструментарий разработки.
Среды разработки .NET-приложений: Visual Studio .NET (C++, C#, J#), SharpDevelop, Eclipse, Borland Developer Studio (Delphi, C#) и т. д. Приложения также можно разрабатывать в текстовом редакторе и использовать консольный компилятор.
Так же как и технология Java[8], среда разработки .NET создаёт байт-код, предназначенный для исполнения виртуальной машиной. Входной язык этой машины в .NET называется MSIL (Microsoft Intermediate Language) или просто IL. Применение байт-кода позволяет получить кросс-платформенность на уровне скомпилированного проекта (в терминах .NET: сборка), а не на уровне исходного текста, как, например, в С. Перед запуском сборки в среде исполнения (CLR) байт-код преобразуется встроенным в среду JIT-компилятором (just in time, компиляция на лету) в машинные коды целевого процессора.
Microsoft .NET включает:
Систему .NET Framework и инструментальные средства Visual Studio .NET — средства, инструменты, спецификации и информационные материалы для построения и сопровождения гибких, надежных и масштабируемых деловых приложений, использующих интернет/интранет/экстранет для взаимодействия с коллегами, клиентами и партнерами, обладающих привычными и понятными интерфейсами, способных работать с самыми различными устройствами. Используя Visual Studio.NET и Visual Studio for Applications, опираясь на .NET Framework и Windows .NET, можно самые сложные задачи решать быстрее, надежнее и эффективнее, чем когда-либо в прошлом.
Семейство корпоративных .NET серверов — современная линейка корпоративных серверов, созданная, чтобы облегчить использование и интеграцию самого широкого круга деловых сервисов на основе веб-стандартов и технологий. Реализует самые современные представления об архитектуре информационных систем. Отвечает самым взыскательным запросам в области масштабирования, производительности, надежности и безопастности, удобства разработки и эксплуатации.
Службы .NET — Building Block Services — типовые «строительные блоки», позволяющие архитекторам корпоративных и общедоступных информационных сервисов сосредоточиться на своих специфических проблемах, а для решения стандартных задач (авторизация, персонализация и другие) использовать стандартные решения.
Программное обеспечение для устройств — позволяет использовать для доступа в интернет, связи с .NET-серверами и получения разнообразных услуг не только персональные компьютеры, но и сотовые телефоны и другие устройства.
Разнообразные рабочие среды — на платформе .NET реализованы рабочие среды, являющиеся наиболее естественными и удобными для основных категорий пользователей:
информационные службы и сервисы MSN для самого широкого круга потребителей;
интегрированные деловые сервисы bCentral для предприятий малого и среднего бизнеса;
Office для работников компаний, учреждений и вообще для всех, кто создает и использует традиционные документы;
Visual
Studio .NET для профессиональных разработчиков.
При разработке сложных веб-проектов часто возникает необходимость использования базы данных. Традиционно используемые для WEB-разработок языки программирования (Perl, PHP, ASP и другие) позволяют реализовывать практически любые задачи. Но обрабатывать с их помощью большие объемы данных, имеющих к тому же сложную структуру, достаточно затруднительно. Разработка подобных программ требует все возрастающих затрат труда программистов, в геометрической прогрессии растет объем программного кода и количество ошибок, снижается надежность программного обеспечения.
В
такой ситуации на помощь программисту
приходят базы данных. Согласно классическому
определению, база данных — это упорядоченная
совокупность информации, хранящейся
в виде множеств, каждое из которых
содержит записи унифицированного вида.
Системы управления базами данных (СУБД18)
предоставляют программисту мощнейший
инструментарий для создания, обновления
и обработки больших объемов информации,
имеющей сложную структуру. На рисунках
Г.1 и Г.2 приложения Г представлены схемы
формирование запроса к БД как на стороне
клиента, так и на стороне сервера.
4.1
MySQL
Практически любой хостинг, который предоставляет стандартные услуги, включает в них несколько баз данных MySQL. Основанием для этого служит ряд немаловажных причин, и одной из них является то, что MySQL является продуктом класса Open Source (открытые исходные тексты), который можно получить бесплатно. Как правило, сервер и клиент MySQL входят в любой дистрибутив операционных систем семейства BSD (FreeBSD, NetBSD, OpenBSD) и Linux. Они используются на большинстве веб-серверов, но, при необходимости, последнюю версию MySQL для всех поддерживаемых систем (в том числе и для Windows) также можно найти на сайте компании MySQL AB — разработчиков MySQL [3].
Другая немаловажная причина популярности MySQL заключается в том, что ее создатели с самого начала разработки этой СУБД поставили во главу угла ее быстродействие, пожертвовав при этом некоторыми удобствами для разработчиков. Связка PHP + MySQL или Perl + MySQL обеспечивают очень высокое быстродействие, которого очень трудно достичь другими средствами [4]. Очень хорошая связь MySQL с PHP стала еще одной причиной популярности этой СУБД. Поддержка MySQL входит в стандартную сборку PHP, и можно быть уверенным, что проблем обращения к серверу MySQL из PHP-скриптов не будет. Для обеспечения взаимодействия PHP с другими СУБД (PostgreSQL, Oracle и так далее) приходится компилировать его самостоятельно из исходных кодов с дополнительными опциями. Таким образом, можно считать, что дешевизна, легкодоступность, производительность и тесная взаимосвязь с PHP.
Однако, высокая скорость работы MySQL достигается за счет принесения в жертву удобства разработки, лишая разработчиков многих инструментов и команд, привычных в других СУБД. В MySQL мы не можем пользоваться вложенными подзапросами, процедурами, триггерами, видами и, с некоторыми оговорками, каскадными обновлениями.
Как и в большинстве современных СУБД, для создания запросов серверу MySQL применяется язык SQL19. Можно считать, что в настоящее время SQL является стандартом работы с базами данных. Но необходимо помнить, что несмотря на существующие стандарты SQL, в разных СУБД его реализации могут отличаться, то есть существуют так называемые "диалекты" SQL. Язык запросов в MySQL придерживается стандарта ANSI20 SQL92, но включает в себя специфические ключевые слова, которых нет в этом стандарте.