Веб-приложение – это клиент-серверное приложение, клиентом в котором является браузер, а сервером – веб-сервер. Логика веб-приложения построена на взаимодействии сервера и браузера: хранение данных в основном осуществляется на сервере, а обмен информацией происходит по сети.
Главное преимущество веб-приложений в том, что функции, которые выполняются в веб оболочке браузера, не зависят от операционной системы клиента. Приложение создается один раз для произвольно выбранной платформы и разворачивается на ней, поэтому нет необходимости писать различные версии для Microsoft Windows, Mac OS X, GNU/Linux и других операционных систем. Однако, проблемы при разработке веб-приложений и в их последующей поддержке могут возникнуть из-за различной реализации HTML, CSS, DOM и других спецификаций в браузерах.
Веб-приложение включает в себя клиентскую и серверную часть. Клиентская часть реализует интерфейс пользователя, формирует запросы к серверу и обрабатывает ответы на него. Серверная часть принимает запрос от клиента. Выполняет вычисления, затем формирует веб-страницу и отправляет ее клиенту по сети, используя при этом протокол HTTP.