Структура веб-приложения

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

Чаще всего веб-приложения состоят как минимум из трёх основных компонентов:

  • Клиентская часть веб приложения - это графический интерфейс. Это то, что вы видите на странице. Графический интерфейс отображается в браузере. Пользователь взаимодействует с веб-приложением именно через браузер, кликая по ссылкам и кнопкам.
     
  • Серверная часть веб-приложения - это программа или скрипт на сервере, обрабатывающая запросы пользователя (точнее, запросы браузера). Чаще всего серверная часть веб-приложения программируется на PHP. При каждом переходе пользователя по ссылке браузер отправляет запрос к серверу. Сервер обрабатывает этот запрос, вызывая некоторый PHP-скрипт, который формирует веб-страничку, описанную языком HTML, и отсылает клиенту по сети. Браузер тут же отображает полученный результат в виде очередной веб-страницы.
     
  • База данных (БД, или система управления баазми данных, СУБД) - программное обеспечение на сервере, занимающееся хранением данных и их выдачей в нужный момент. В случае форума или блога, хранимые в БД данные - это посты, комментарии, новости, и так далее. База данных располагается на сервере. Серверная часть веб-приложения (то есть, PHP скрипт) обращается к базе данных, извлекая данные, которые необходимы для формирования страницы, запрошенной пользователем.

Это, пожалуй, основные компоненты большинства веб-приложиний. Графически схему их взаимодействия можно представить так:

  • Браузер через Интернет отсылает HTTP-запросы веб-серверу
  • Веб-сервер вызывает PHP-скрипт, написанный разработчиком веб-приложения
  • PHP-скрипт обращается к базе данных, если это нужно
  • В результате PHP-cкрипт возвращает клиенту веб-страницу, которую и отображает браузер.

Язык программирования для серверной части

Для программирования серверной части веб приложения может использоваться язык PHP, как в описанном примере, но не обязательно он. Для разработки веб-приложений можно использовать практически любые современные языки программирования:

  • PHP, Perl
  • Ruby
  • Java
  • платформа .NET (языки VB.NET, C# и другие, поддерживаемые .NET)
  • С/C++

Независимо от языка, на котором написана серверная часть веб-приложения, способы обработки запросов и взаимодействия с пользователем остаются те же.

В дальнейшем в ходе освоения веб-технологий будем опираться на язык PHP, поскольку он является самым распространённым и самым простым среди всех перечисленных. Конфигурация сервера, включающая себя операционную систему Linux, язык программирования PHP, веб-сервер Apache и СУБД MySQL считается стандартом де-факто для среднестатистического сервера и даже носит название LAMP (от сокращения Linux, Apache, MySQL, PHP).

Язык программирования клиентской части

Основной язык, которым описывается графический интерфейс веб-приложения - это HTML. Этот язык описывает структуру веб-страницы. Художественное оформление веб страниц описывается таблицами стилей - CSS.

Для "оживления" графического интерфейса используются дополнительные технологии: скрипты JavaScript, а также встроенные в веб-страницу компоненты, созданные на Flash, Java или Silverlight. Все эти элементы веб-страницы могут взаимодействовать между собой: программа, написанная на JavaScript и выполняющаяся на веб-странице, может управлять встроенными в страницу компонентами, тем самым реализуя пользовательский интерфейс с богатыми возможностями.

Раздел:

Комментарии

День добрый. Прежде всего спасибо за ваш труд. Кое где встречаются опечатки - но это не суть важно. Я хотел лишь уточнить, что .NET это не язык программирования, а каркас, содержащий как виртуальную машину, так и возможность подключения многих языков. Так что перечисляя языки серверные в данном случае лучше, по-моему, указать конкретно ASP.NET или C#, а еще лучше ASP.NET + C#. Хотя ASP.NET сам по себе опять же не язык программирования, а больше каркас для формирования страниц на сервере с возможностью, когда надо, использовать уже практически любой удобный вам язык (зачастую C#).

Спасибо огромное за Вашу работу!
Я работаю в сфере журналистики и занимаюсь SEO. Cейчас углубленно изучаю WEB-дизайн и на начальной стадии - программирование. Ваш сайт - это крайне полезная работа! Спасибо Вам большое.

C уважением,

http://best-content.ru