Введение

Технология веб-приложений – устаревшая технология, больше не поддерживаемая современными браузерами.

Богатое интернет-приложение (также известное как богатое веб-приложение, RIA или устанавливаемое интернет-приложение) – это веб-приложение, обладающее многими характеристиками десктопного программного обеспечения. Эта концепция тесно связана с одностраничным приложением и может предоставлять пользователю интерактивные возможности, такие как перетаскивание, фоновые меню, редактирование WYSIWYG и другие. Впервые эта концепция была представлена в 2002 году компанией Macromedia для описания продукта Macromedia Flash MX (позже ставшего Adobe Flash). В течение 2000-х годов термин стал использоваться в более широком смысле для описания браузерных приложений, разработанных с использованием других конкурирующих технологий плагинов для браузеров, включая Java-апплеты и Microsoft Silverlight. С прекращением поддержки интерфейсов плагинов браузера и переходом на стандартные технологии HTML5, богатые интернет-приложения были заменены веб-приложениями на JavaScript, включая одностраничные приложения и прогрессивные веб-приложения.

История

Термины "богатое интернет-приложение" и "богатый клиент" были введены в марте 2002 года компанией Macromedia (ныне Adobe) в своей исследовательской работе, а концепция "X Internet" – компанией Forrester Research в октябре 2000 года. В ноябре 2011 года ряд объявлений продемонстрировал снижение спроса на архитектуры Rich Internet Application, основанные на плагинах для браузеров, в пользу альтернатив HTML5. Adobe объявила о прекращении разработки Flash для мобильных устройств и телевизоров, перенаправив усилия на Adobe AIR. Эксперты ставили под сомнение дальнейшую актуальность Flash даже на настольных компьютерах, описывая ситуацию как "начало конца". Research In Motion (RIM) заявила о продолжении разработки Flash для PlayBook, что вызвало критику со стороны некоторых обозревателей. Появились слухи о том, что Microsoft откажется от Silverlight после выхода версии 5, что впоследствии подтвердилось. В совокупности эти заявления привели к тому, что некоторые провозгласили "конец эпохи плагинов для браузеров".

Богатые мобильные приложения

Богатое мобильное приложение (RMA) — это мобильное приложение, которое наследует множество характеристик веб-приложений и обладает рядом специфических свойств, таких как контекстная осведомленность и вездедоступность.

Истоки RMA

После успешного развертывания веб-приложений на настольных компьютерах и растущей популярности мобильных устройств, исследователи перенесли расширенные функциональные возможности веб-приложений на платформу смартфонов. В 2003 году японская компания NTT DoCoMo внедрила Adobe Flash Lite для расширения функциональности мобильных приложений. В 2008 году Google представила Google Gears для устройств Windows Mobile 5 и 6, чтобы поддерживать платформенно-независимые мобильные приложения в автономном режиме. Google Gears для мобильных устройств – это расширение для мобильных браузеров, предназначенное для разработки веб-приложений, дополненных отдельным устанавливаемым пользователем модулем. Эти приложения могут выполняться на мобильном устройстве через веб-браузер независимо от архитектуры, операционной системы и используемой технологии. В апреле 2008 года Microsoft представила Microsoft Silverlight mobile для разработки привлекательных и интерактивных пользовательских интерфейсов для мобильных устройств. Silverlight – это плагин .NET, совместимый с несколькими мобильными браузерами, который позволяет запускать мобильные приложения, поддерживающие Silverlight. Android интегрировал плагин Google Gears в браузер Google Chrome Lite для улучшения пользовательского опыта пользователей Android.

Adobe Flash

Adobe Flash обрабатывает векторную и растровую графику для создания анимации текста, рисунков и статичных изображений. Он поддерживает двунаправленную потоковую передачу аудио и видео, а также позволяет принимать пользовательский ввод с помощью мыши, клавиатуры, микрофона и камеры. Flash включает объектно-ориентированный язык программирования ActionScript и поддерживает автоматизацию посредством языка JavaScript Flash (JSFL). Контент Flash может воспроизводиться на различных компьютерных системах и устройствах с использованием Adobe Flash Player, который доступен бесплатно для распространенных веб-браузеров, некоторых мобильных телефонов и ряда других электронных устройств (с использованием Flash Lite). Apache Flex, ранее известный как Adobe Flex, представляет собой комплект разработки программного обеспечения (SDK) для разработки и развертывания кроссплатформенных RIA на базе платформы Adobe Flash. Изначально разработанный компанией Macromedia и впоследствии приобретенный Adobe Systems, Flex был передан Adobe в Apache Software Foundation в 2011 году.

Java апплет

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

JavaFX

JavaFX — это программная платформа для создания и доставки RIА, способная работать на широком спектре подключенных устройств. Текущая версия (JavaFX 12, 11 марта 2019 года) позволяет разрабатывать приложения для настольных компьютеров, браузеров и мобильных телефонов, а также включает поддержку 3D-графики. В планах поддержка телевизионных приставок, игровых консолей, Blu-ray плееров и других платформ. Java FX может работать как плагин Java-апплета или через Webstart.

Microsoft Silverlight (по умолчанию)

Silverlight был предложен Microsoft как еще одна проприетарная альтернатива. Эта технология не получила широкого распространения и, например, не поддерживается многими мобильными устройствами. Примерами ее использования были потоковая трансляция видео во время таких мероприятий, как летние Олимпийские игры 2008 года в Пекине, зимние Олимпийские игры 2010 года в Ванкувере, а также конвенты 2008 года обеих основных политических партий в США. Silverlight также использовался Netflix для своего сервиса мгновенного видеопотока. Разработка Silverlight больше не ведется, и он не поддерживается в Microsoft Edge, самом новом браузере Microsoft.

Колесо

Gears, ранее известный как Google Gears, — это устаревшее программное обеспечение, обеспечивающее автономное хранение данных и другие дополнительные функции для веб-браузеров, включая Google Chrome. Разработка Gears была прекращена в пользу стандартизированных методов HTML5. Gears был удален из Google Chrome 12.

Другие методы

RIA могут использовать XForms для расширения своих возможностей. Использование XML и XSLT в сочетании с XHTML, CSS и JavaScript также позволяет создавать более сложные клиентские компоненты пользовательского интерфейса, такие как таблицы данных, которые можно сортировать непосредственно на стороне клиента, без обращения к серверу. Браузеры Mozilla и Internet Explorer поддерживают эту технологию.

Проблемы безопасности в старых стандартах

RIA создают проблемы для индексации веб-поисковыми системами, но контент Adobe Flash теперь хотя бы частично индексируется. Безопасность может быть выше, чем у прикладного программного обеспечения (например, благодаря использованию песочниц и автоматических обновлений), однако сами расширения остаются уязвимыми, а уровень доступа к ним часто значительно превышает уровень доступа к нативным веб-приложениям. В целях безопасности большинство RIA запускают свои клиентские компоненты в специальной изолированной области на клиентском компьютере, называемой песочницей. Песочница ограничивает видимость и доступ к файловой системе и операционной системе на стороне клиента, предоставляя доступ только серверу приложений на другом конце соединения. Такой подход позволяет клиентской системе обрабатывать локальные операции, переформатирование и т.п., тем самым снижая объем и частоту трафика между клиентом и сервером, особенно по сравнению с клиент-серверными реализациями, основанными на так называемых тонких клиентах.