Структура веб-приложения
Давайте для простоты будем пока считать, что веб-приложение и веб-сайт - одно и то же. Не всегда веб-приложение является сайтом, и наоборот, но пока нет задачи вдаваться в подробности, поскольку рассматривать будем самый простой вариант.
Чаще всего веб-приложения состоят как минимум из трёх основных компонентов:
- Клиентская часть веб приложения - это графический интерфейс. Это то, что вы видите на странице. Графический интерфейс отображается в браузере. Пользователь взаимодействует с веб-приложением именно через браузер, кликая по ссылкам и кнопкам.
- Серверная часть веб-приложения - это программа или скрипт на сервере, обрабатывающая запросы пользователя (точнее, запросы браузера). Чаще всего серверная часть веб-приложения программируется на 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 и выполняющаяся на веб-странице, может управлять встроенными в страницу компонентами, тем самым реализуя пользовательский интерфейс с богатыми возможностями.
Комментарии
Arkadiy Fenev (гость)
Сб, 10/12/2011 - 16:07
Ссылка
День добрый. Прежде всего
День добрый. Прежде всего спасибо за ваш труд. Кое где встречаются опечатки - но это не суть важно. Я хотел лишь уточнить, что .NET это не язык программирования, а каркас, содержащий как виртуальную машину, так и возможность подключения многих языков. Так что перечисляя языки серверные в данном случае лучше, по-моему, указать конкретно ASP.NET или C#, а еще лучше ASP.NET + C#. Хотя ASP.NET сам по себе опять же не язык программирования, а больше каркас для формирования страниц на сервере с возможностью, когда надо, использовать уже практически любой удобный вам язык (зачастую C#).
Анна (гость)
Ср, 14/12/2011 - 13:36
Ссылка
Спасибо огромное за Вашу
Спасибо огромное за Вашу работу!
Я работаю в сфере журналистики и занимаюсь SEO. Cейчас углубленно изучаю WEB-дизайн и на начальной стадии - программирование. Ваш сайт - это крайне полезная работа! Спасибо Вам большое.
C уважением,
http://best-content.ru