WEB-программирование

Автор работы: Пользователь скрыл имя, 14 Октября 2014 в 14:31, реферат

Краткое описание


С сегодняйшей лекции мы начинаем с вами изучать новый предмет — WEB-программирование или, другими словами, программирование для Internet. Сначала мы постараемся рассмотреть работу в сети Internet с самой общей позиции.
После того, как вы набрали адрес в браузере (программе, которая позволяет просматривать страницы в Internet), с вашего компьютера посылается запрос на компьютер, адрес которого вы написали. При удачном соединении тот компьютер посылает результат — обычно, текст в формате HTML.

Прикрепленные файлы: 1 файл

WEB.doc

— 54.00 Кб (Скачать документ)

WEB-программирование 

Введение

С сегодняйшей лекции мы начинаем с вами изучать новый предмет — WEB-программирование или, другими словами, программирование для Internet. Сначала мы постараемся рассмотреть работу в сети Internet с самой общей позиции.

После того, как вы набрали адрес в браузере (программе, которая позволяет просматривать страницы в Internet), с вашего компьютера посылается запрос на компьютер, адрес которого вы написали. При удачном соединении тот компьютер посылает результат — обычно, текст в формате HTML.

Введём несколько терминов. Компьютер, который посылает запрос в этой схеме называется клиентом, компьютер, который получает и отвечает на запрос — сервером. Отмечу, что клиент и сервер могут совпадать.

Программа, которая посылает запрос, также называется клиентом (клиентское приложение, приложение-клиент), программа, которая отвечает на запрос называется сервером, точнее WEB-сервером.

Надо сказать, что подобная схема работы очень широко распространена в программировании и имеет название технология клиент-сервер. Работа с базами данных (совокупность связанных сведений, представленных в пригодной для хранения, передачи и автоматизированной обработки) осуществляется также по этой технологии. В этом случае приложение-клиент посылает запрос системе управления базами данных (СУБД), а она посылает результат-набор данных. По такой же (и даже более сложной, трёхуровневой схеме) создано программное обеспечние для биллинговых систем (системы управления и учёта в сотовых сетях).

Представленная выше схема для наших целей требует уточнения.

  1. Обработка запроса WEB-сервером. В простейшем случае в адресной строке после имени компьютера (rsc-team.ru) расположен путь (может быть пустой), указывающий расположение документа, который надо послать клиенту. Однако, подобное встречается хоть и часто, но не всегда. Довольно часто в строке указывается путь не к файлу, который надо переслать, а к файлу, содержащему программу, которую надо запустить. Результатом же работы этой программы является тот документ, который надо послать клиенту. Указанная программа часто называется скриптом, точнее, скриптом, запускаемым на стороне сервера.
  2. Иногда, строка после названия сервера вообще никак не связана с расположением документов на сервере и обрабатывается программой, написанной WEB-программистом, которая возвращает в качестве результата документ. Такая схема повышает секретность хранения информации

Для чего нужны скрипты? Довольно часто WEB-сервер должен возвращать разную информацию для различных людей, а также информацию, которая изменяется с течением времени. Для нас наиболее актуальный пример — форум.

В случае, если на стороне сервера скрипты не используются сайт называют статическим, иначе динамическим.

Однако, в использовании скриптов имеется ещё одно удобство. Те из вас, кто создавал свои сайты, замечали, что часто почти все страницы сайта сделаны по одному шаблону. Например, одинаковое (или почти одинаковое) меню расположено на всех страницах сайта ФМШ. Если сайт является статическим, то при изменении меню нужно изменять все файлы, содержащие HTML-текст, если же сайт динамический, то можно меню подключать ко всем страницам автоматически (что серьёзно упрощает работу администратора).

Выше озвучивалось что существуют скрипты, выполняемые на стороне сервера. Естественно, такое название означает, что существуют скрипты, выполняемые на стороне клиента. Часто при вводе информации перед посылкой её на сервер происходит проверка её корректности на стороне клиента (с помощью скрипта). Такой приём серьёзно снижает нагрузку на сервер и повышает удобство для пользователя.

На стороне сервера для хранения информации используются специальные хранилища (базы данных) и программы (СУБД). В этом случае скрипты выполняют запросы к СУБД, последняя возвращает результаты запросы-данные, а скрипт формирует документ, который передаётся браузеру.

Обзор HTML

Язык HTML (HyperText Markup Language - язык разметки гипертекста) предназначен для описания вида документов, содержащих текст и некоторые дополнительные структуры (такие как таблицы, списки). Кроме того, можно вставлять ссылки между частями документа, с которыми удобно работать в браузере. Замечу, что HTML не является языком программирования.

Приведу пример простейшего HTML-документа:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"

     "http://www.w3.org/TR/REC-html40/strict.dtd">

<HTML>

   <HEAD>

     <TITLE>Приветик</TITLE>

   </HEAD>

   <BODY>

      Всем привет!

   </BODY>

</HTML>


Первая строка (она необязательна, но желательна) показывает версию языка HTML, которой пользуется автор документа.

Текст, заключённый в угловые скобки является служебным и прямо в документе не появляется. Такой текст вместе с угловыми скобками называется тэгом.

После открывающейся угловой скобки идёт название элемента (часто говорят также тэга). Если предварительно поставлен символ / (слэш), то тэг называют конечный, иначе его называют начальным. Между тэгами <HTML> и </HTML> размещают собственно HTML-документ. Он состоит из двух разделов — заголовка (между тэгами <HEAD> и </HEAD> и тела (между тэгами <BODY> и </BODY>) (в некоторых случаях раздел BODY не используется).

Внутри тэга TITLE указывается заговолок документа (он указывается в заголовке окна браузера, а также является строкой по умолчанию для закладок). Внутри тела документа просто указана строка, которая будет отображаться в основной части окна браузера.

Большинство тэгов языка HTML имеют двойное назначение. С одной стороны они структурируют часть документа, с другой стороны им соответствует некоторый способ отображения в браузере. Так тэг OLпредназначен для помещения в документ нумерованного списка. В документе же это выглядит так:

  1. Иванов
  2. Петров

Некоторые тэги предназначены только для описания вывода (так, например тэг FONT позволяет изменять размер шрифта). В последнее время существует тэнденция по разделению этих двух аспектов. Так с помощью тэгов HTML описывают структуру документа, а способ отображения описывают с помощью языка CSS (каскадные таблицы стилей). В результате тэг FONT относится к разряду нерекомендуемых консорциумом W3C, однако, используется он весьма часто, так как в реальных браузерах он поддерживается всегда, а те же CSS в старых браузерах не поддерживаются.

В мире существует огромное количество версий языка HTML. Во-первых, существуют спецификации языка HTML, принятые консорциумом W3C. Во-вторых, в каждом браузере реализованы не все возможности, имеющиеся в спецификации, однако, существуют свои собственные "фишки". Поэтому профессиональные сайты необходимо тестировать на максимально возможном количество браузеров (в настоящее время уместно использовать Internet Explorer 4.x-6.x, Mozill'у, Oper'у и Netscape).

О создании сайтов

Теперь следует перейти к перечислению тех средств, которые используются при создании сайтов и их краткой характеристике

HTML

Язык разметки гипертекста. Документы именно на этом языке передаются чаще всего через Internet.

CSS

Язык описания стилей, описываются типы шрифтов, способы расположения информации в документе HTML и другие дизайнерские аттрибуты.

JavaScript (JScript), VBScript, Java, COM-объекты, Flash

Представленные средства (первые три из них языки программирования) предоставляют возможность для написания скриптов, исполняемых на стороне клиента

PHP, Perl, любые другие языки (включая Prolog)

Используются для написания скриптов, исполняемых на стороне сервера

СУБД (например, MySQL)

Программа, организующая работу с базами данных (на сервере)

WEB-сервер (например, Apache)

Программа, обрабатывающая запросы браузеров

Создание сайтов

Создание сайта условно можно разделить на следующие этапы (этапы постановки задания и построения спецификации, а также тестирования я опускаю):

  1. Создание дизайна (то есть прототипа всех HTML-страниц, включая, обычно, скрипты, исполняемые на стороне клиента)
  2. Создание концептуальной базы данных (шаблона)
  3. Создание скриптов, выполняемых на стороне сервера

Реляционные базы данных

В базе данных храниться информация об объектах. Каждый тип объекта задаётся некоторым набором атрибутов. Например, человек может описываться атрибутами: фамилия, имя, отчество, дата рождения. Каждому атрибуту соответствует множество тех значений, которое он может принимать (домен атрибута). Обычно, реляционные базы данных представляют в виде набора взаимосвязанных таблиц.

Базы данных

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

Существуют следующие модели представления баз данных:

  1. иерархическая: в этом случае информация представлена в виде графа-леса (лес это граф, составленный из нескольких деревьев). Вершинами графа являются объекты, а рёбра представляют собой связи.
  2. сетевая: в этом случае информация представлена в виде ориентированного графа
  3. реляционная: эту мы будем изучать
  4. объектно-ориентированная модель

Уровни абстракции баз данных

Сначала перечислю уровни:

  1. Уровень представления
  2. Концептуальная БД
  3. Физическая БД

Концептуальная база данных представляет собой конкретную модель хранения информации. Этот уровень взаимодействует с физической базой данных (на этом уровне представлен способ хранения информации на уровне битов-байтов).

Не каждый пользователь имеет полный доступ к базе данных, поэтому группам пользователей соответствует своё представление, которое некоторым образом взаимодействует с концептуальной базой данных. Эта концепция являет собой ещё один пример расширения технологии «клиент-сервер».

В каждый момент времени база данных имеет некоторое состояние, которое мы назовём экземпляром БД. В то же время имеется набор типов и связей, способов описания объектов, их мы назовём планомБД. План базы данных меняется редко, экземпляры — довольно часто. Однако, в настоящее время это положение не всегда верно.

 


Информация о работе WEB-программирование