Techlabs.ru

Веб-приложения – дань моде или будущее ПО?

18.09.2008 00:05, TECHLABS Team

Содержание статьи:

Сегодня все чаще и чаще мы слышим разговоры о веб-приложениях. И хотя эти разговоры на слуху не так давно, веб-приложениями мы с вами пользуемся уже не год и не два. Многие из них прочно вошли в нашу жизнь, и мы над ними даже не задумываемся, когда используем. Некоторые считают, что создание веб-приложений сегодня – это просто дань моде, другие – что за ними будущее. Где же истина, и что на самом деле представляют собой эти загадочные для многих веб-приложения? Попробуем разобраться.
 
Что такое веб-приложения, их плюсы и минусы
 
Веб-приложение представляет собой пользовательскую программу, основная часть которой содержится на удаленном сервере, а пользовательский интерфейс (UI) отображается в браузере в виде веб-страниц.
 
По своей сути запуск веб-приложения ничем не отличается от загрузки обычной веб-страницы: вводим ссылку в браузер - и оно перед нами, точнее, верхняя часть айсберга, которой является интерфейс пользователя. В этом есть несколько плюсов. Первый из них – это то, что само по себе приложение абсолютно не зависит от того, какая операционная система установлена на компьютере пользователя, то есть оно, по сути, является кросс-платформенным. Однако есть здесь и один момент, который может создать некоторые трудности при работе с веб-приложениями – это различные реализации некоторых спецификаций в браузерах, а также возможность настраивать разные параметры вроде отображения шрифтов, что может привести к некорректной работе некоторых приложений. Но стоит отметить, что данный минус хотя и имеет место, но сколь либо существенного влияния на работу большинства веб-приложений он не оказывает.
 
Вторым плюсом веб-приложений можно назвать то, что сам факт их существования полностью меняет способ распространения продукта. Здесь создатели отходят от традиционных способов распространения программных продуктов путем продажи копий и установки их на каждый компьютер пользователей. Теперь все гораздо проще: единственная версия приложения расположена на сервере, а все пользователи имеют доступ к ней, вернее, к ее пользовательскому интерфейсу из любого места в мире. Из любого, где есть Интернет. При этом пользователю даже не нужно устанавливать новую версию приложения – сразу после своего появления она доступна всем, причем многие могут и не заметить каких-либо изменений, тем более если эти изменения не касаются внешнего вида интерфейса. Во всем этом явно виден и положительный момент для разработчиков – им не нужно заботиться о совместимости версий своих приложений, поскольку все пользователи единовременно получают доступ и работают с самой последней версией приложения.
 
Третьим плюсом для пользователя мы назовем то, что ему нет необходимости устанавливать и настраивать программное обеспечение – все уже установлено на серверах и настроено разработчиками. Все, что требуется от пользователя, это изменить на свой вкус несколько ключевых параметров. Это весьма приятно для пользователей, поскольку большинство не любит возиться с настройками и предпочитает программные продукты, полностью готовые к использованию сразу после их инсталляции, хотя есть и такие, которые предпочитают полностью настроить программу под свой вкус и нужды. Однако в случае веб-приложений мы избавлены даже от процесса инсталляции.
 
Четвертым плюсом можно назвать то, что для работы с приложением от пользователя, по большому счету, ничего и не нужно. Разве что компьютер и установленный браузер. Но тут проблем нет – Интернет-браузер уже имеется в любой операционной системе, и для доступа к необходимому веб-приложению достаточно просто загрузить его URL в браузер. Использование веб-приложений во многом снимает ограничения, накладываемые на аппаратную часть компьютера. То есть определенные системные требования к ПК все же есть, но их уровень автоматически достигнут компьютером, раз на нем уже запущены ОС и браузер.
 
Следующий положительный момент веб-приложений касается их разработчиков. Ввиду того, что основная часть веб-приложения сконцентрирована на сервере в одном месте, куда проще заниматься его настройкой, не нужно содержать огромные команды специалистов технической поддержки, занимающихся консультациями пользователей и настройкой приложения на компьютерах во всем мире. Это гораздо менее затратно в финансовом плане и куда более эффективно. При этом пользователю невидима архитектура приложения, в любой момент можно добавить любое количество серверов, на которых установлена основная составляющая приложения, добавить вычислительные мощности, и пользователь этого даже не заметит.
 
Таким образом, мы видим, что веб-приложения имеют большое количество плюсов при отсутствии видимых минусов, самым большим и очевидным из которых является невозможность использования приложений при отсутствии доступа к Всемирной паутине.
 
Как мы уже говорили в начале материала, хотя веб-приложения и набрали свои обороты сегодня, однако некоторыми из них мы пользуемся довольно давно. Обратимся к истории веб-приложений.
 
История веб-приложений
 
Некоторое время назад мы рассказывали о концепции Веб 2.0. Так вот появление веб-приложений тесно связано с развитием Веб 2.0. И, как бы это ни было удивительно, сервисом, который можно считать первым веб-приложением, можно назвать сервис, которым пользуются сегодня тысячи, сотни тысяч, да что там мелочиться – миллионы пользователей – Google.
 
google logo
 
Именно Google стал тем сервисом, который полностью отошел от старых принципов разработки и распространения программного обеспечения. Его создатели ушли от лицензирования продукта и его продажи, установки постоянных обновлений и всего того, что мы привыкли видеть в традиционной софтверной индустрии. Продукт просто постоянно улучшался, а пользователи, сами того не подозревая, косвенно платили за его использование.
 
google main 
 
 
Многие думают, что Google – это простой поисковик, однако это не так. Сервис Google выступает в качестве посредника между браузером пользователя и сотней тысяч серверов, на которых находится запрашиваемая пользователем информация.
 
Другие детища эры Веб 2.0 также являются весьма успешными веб-приложениями. Помните Napster, который позволил людям обмениваться музыкальными произведениями, содержащимися на персональных компьютерах пользователей? А eBay, позволивший пользователям по всему миру совершать единичные транзакции в несколько долларов, находясь в разных частях света. Еще один пример успешного веб-приложения – BitTorrent, внесший огромный вклад в децентрализацию Интернета.
 
 
ebay main
 
Многие из этих сервисов добились успеха, поняв и начав использовать так называемую концепцию "длинного хвоста". Суть ее состоит в том, что коллективная мощь большого числа маленьких сайтов, предоставляющих большую часть контента, очень велика.
 
Таким образом, мы видим, что веб-приложениями мы на самом деле пользуемся довольно давно по меркам компьютерного мира.
 
Принцип работы веб-приложений
 
Веб-приложение получает запрос от клиента и выполняет вычисления, после этого формирует веб-страницу, отправляя ее клиенту по сети с использованием протокола HTTP. Само веб-приложение может выступать в качестве клиента других служб, скажем, базы данных или другого веб-приложения, расположенного на другом сервере.
 
В настоящее время набирает популярность новый подход к разработке веб-приложений, называемый Ajax. При использовании Ajax страницы веб-приложения не перезагружаются целиком, а лишь догружают необходимые данные с сервера, что делает их более интерактивными и производительными.
 
 
ajax fig
 
Для создания веб-приложений на стороне сервера используются разнообразные технологии и языки программирования:
Этот список языков далеко не полон, и возможно использования многих других. Некоторые из них, такие как PHP, Perl, Python, имеют открытый код, распространяются свободно и могут использоваться практически на любых веб-серверах, другие (ASP, ASP.NET, Java) — привязаны к конкретным веб-серверам.
 
На стороне клиента используется:
Для веб-приложений необходимо, чтобы они работали под различными ОС. Поэтому нет необходимости писать версии приложения для различных ОС – оно создается один раз и работает под всеми системами сразу одинаково успешно. Для этого используются HTML, CSS, DOM, но как мы уже упоминали, различная реализация этих спецификаций в браузерах может привести к некорректной работе приложений. Другой подход к созданию веб-приложений заключается в использовании Flash и Java для полной или частичной реализации пользовательского интерфейса. Большинство браузеров поддерживают эти технологии, поэтому приложения, созданные с их помощью, выполняются без проблем, однако несовместимости все же возможны.
 
Интересно, что Java, которая сегодня стала завершенным и мощным языком, который получил огромную популярность, в 1999 году многими веб-дизайнерами была заочно "похоронена", поскольку ее использование при создании страниц стало дурным тоном, ведь с помощью Java создавались подсвечивающиеся при наведении курсора кнопки и прочие "красивости", которые очень быстро стали всех раздражать.
 
Совершенно другой подход к разработке веб-приложений дает использование AJAX, о котором мы рассказывали в рамках статьи о Веб 2.0, поэтому повторяться не будем. При использовании движка AJAX в коде страницы становится возможным передавать и получать необходимые данные, не перезагружая саму страницу и не тратя лишний трафик.
 
В общем-то, можно сказать, что веб-приложения, с которыми мы работаем, – это всего лишь надстройка над мощным аппаратным и программным продуктом, доступная пользователю и называемая пользовательским интерфейсом. А для ее создания используются, в принципе, все те же технологии, которые применяются и для создания других веб-страниц и сайтов.
 
Веб-приложения сегодня
 
Сегодня веб-приложения получают все большую и большую популярность. eBay позволяет продавать и покупать все что угодно, предоставляя торговую площадку в сети, YouTube дает возможность загружать и показывать пользователям Интернета различные видеоролики. Riya – находить людей по фотографиям, используя технологи распознавания черт лица.
 
 
riya main
 
Gmail предлагает функционал, едва ли не превосходящий функционал традиционных почтовых клиентов. Примеров можно придумывать множество, однако лидером среди внедрения веб-приложений сегодня является их прородитель – Google.
 
 
google docs
 
Судите сами: Google Groups, Google Sugest, Google Maps, Google Docs – все эти веб-приложения сегодня используются все шире и шире. В основе их пользовательского интерфейса лежит AJAX, что делает работу с ними более быстрой и экономной в плане расходования трафика. Google теперь выполняет не только роль посредника в поиске контента, но и дает возможность посмотреть спутниковую карту мира, создать в окне веб-браузера любой офисный документ и организовать работу с ним – поместить в защищенное хранилище, ограничить доступ к нему одним пользователям, предоставить другим или даже опубликовать его. Таким образом, веб-приложения с каждым днем предоставляют нам все больше и больше возможностей выполнять в окне браузера те действия, которые совсем недавно были доступны лишь с помощью специализированного софта. Кроме того, все тот же Google не так давно выпустил Google Gears – утилиту для работы веб-приложений с данными, содержащимися на ПК пользователя. Она позволяет кэшировать информацию на диске и обращаться к ней при последующих запусках, сохранять данные в виде реляционной базы данных, выполнять ресурсоемкие задачи асинхронно. Что же будет дальше?
 
Заключение
 
Итак, что такое веб-приложения и как они устроены, мы разобрались, вкратце взглянули на их историю, а также поговорили о плюсах и минусах. Что можно сказать в заключение? Очевидно, что плюсов от использования веб-приложений гораздо больше, чем минусов. Однако стоит сказать о том, что если крупные веб-приложения, получившие популярность от известных разработчиков, на самом деле мощные продукты, которые хорошо защищены, то небольшие приложения, появляющиеся день ото дня, не могут гарантировать вашим данным, которые вы передаете в сеть, стопроцентной безопасности. Тем не менее не стоит отказываться от использования веб-приложений, тем более проверенных. Да и оффлайн-аналогов многих веб-приложений создать практически нереально – в качестве примера здесь можно привести Google Maps.
 
 
google maps
 
Таким образом, веб-приложения сегодня прочно вошли в нашу жизнь, и многими из них мы пользуемся даже не задумываясь – тем же поиском Google или почтовым сервисом Gmail. Но все сферы использования настольного ПО веб-приложениям пока не под силу – сложного трехмерного моделирования с их помощью пока не сделаешь. Но технологии не стоят на месте. Так что же будет дальше? Скоро увидим, но все же возможно, что в сфере веб-приложений нас ожидает что-то подобное на крах доткомов в 2001 году – многие веб-приложения, которые не смогут выдержать конкуренции, канут в Лету, в то время как мощные и действительно стоящие продукты получат неимоверную популярность и смогут полностью заменить настольное ПО.
Карта сайта1 . Карта сайта2 . Карта сайта3 . Карта сайта4 . Карта сайта5 . Карта сайта6 . Карта сайта7 . Карта сайта8 . Карта сайта9 . Карта сайта10 . Карта сайта11 . Карта сайта12 . Карта сайта13 . Карта сайта14 . Карта сайта15 . Карта сайта16 . Карта сайта17 . Карта сайта18 . Карта сайта19 . Карта сайта20 . Карта сайта21 . Карта сайта22 . Карта сайта23 . Карта сайта24 . Карта сайта25 . Карта сайта26 . Карта сайта27 . Карта сайта28 . Карта сайта29 . Карта сайта30 . Карта сайта31 . Карта сайта32 . Карта сайта33 . Карта сайта34 . Карта сайта35 . Карта сайта36 . Карта сайта37 . Карта сайта38 . Карта сайта39 . Карта сайта40 . Карта сайта41 . Карта сайта42 . Карта сайта43 . Карта сайта44 . Карта сайта45 . Карта сайта46 . Карта сайта47 . Карта сайта48 . Карта сайта49 . Карта сайта50 . Карта сайта51 . Карта сайта52 . Карта сайта53 . Карта сайта54 . Карта сайта55 . Карта сайта56 . Карта сайта57 . Карта сайта58 . Карта сайта59 . Карта сайта60 . Карта сайта61 . Карта сайта62 . Карта сайта63 . Карта сайта64 . Карта сайта65 . Карта сайта66 . Карта сайта67 . Карта сайта68 . Карта сайта69 . Карта сайта70 . Карта сайта71 . Карта сайта72 . Карта сайта73 . Карта сайта74 . Карта сайта75 . Карта сайта76 . Карта сайта77 . Карта сайта78 . Карта сайта79 . Карта сайта80 . Карта сайта81 .