Rich internet applications
   HOME

TheInfoList



OR:

A rich web application (originally called a rich Internet application, or RIA or installable Internet application) is a
web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serv ...
that has many of the characteristics of desktop
application software Application may refer to: Mathematics and computing * Application software, computer software designed to help the user to perform specific tasks ** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
. The concept is closely related to a
single-page application A single-page application (SPA) is a web application or website that interacts with the user by dynamically rewriting the current web page with new data from the web server, instead of the default method of a web browser loading entire new pages. ...
, and may allow the user interactive features such as
drag and drop In computer graphical user interfaces, drag and drop is a pointing device gesture in which the user selects a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object. In general, it can be used to ...
, background menu,
WYSIWYG In computing, WYSIWYG ( ), an acronym for What You See Is What You Get, is a system in which editing software allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed d ...
editing, etc. The concept was first introduced in 2002 by Macromedia to describe Macromedia Flash MX product (which later became
Adobe Flash Adobe Flash (formerly Macromedia Flash and FutureSplash) is a multimedia software platform used for production of animations, rich web applications, desktop applications, mobile apps, mobile games, and embedded web browser video players. Fla ...
).Macromedia Flash MX—A next-generation rich client
/ref> Throughout the 2000-s, the term was generalized to describe web applications developed with other competing browser plugin technologies including Java applets,
Microsoft Silverlight Microsoft Silverlight is a discontinued application framework designed for writing and running rich web applications, similar to Adobe's runtime, Adobe Flash. A plugin for Silverlight is still available for a very small number of browsers. W ...
. With the deprecation of browser plugin interfaces and transition to standard
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
technologies, rich web applications were replaced with JavaScript
web applications A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serve ...
, including single-page applications and progressive web applications.


History

The terms "rich client" and "rich Internet application" were introduced in a
white paper A white paper is a report or guide that informs readers concisely about a complex issue and presents the issuing body's philosophy on the matter. It is meant to help readers understand an issue, solve a problem, or make a decision. A white pape ...
of March 2002 by
Macromedia Macromedia, Inc., was an American graphics, multimedia, and web development software company (1992–2005) headquartered in San Francisco, California, that made products such as Flash and Dreamweaver. It was purchased by its rival Adobe System ...
(now Adobe), though the concept had existed for a number of years earlier under names including: " Remote Scripting" by
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washin ...
in April 1999, "X Internet" by Forrester Research in October 2000, Rich
Web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serv ...
. In November 2011, there were a number of announcements that demonstrated a decline in demand for rich web application architectures based on plug-ins in order to favor
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
alternatives. Adobe announced that Flash would no longer be produced for mobile or TV (refocusing its efforts on
Adobe AIR Adobe AIR (also known as Adobe Integrated Runtime and is codenamed Apollo) is a cross-platform runtime system currently developed by Harman International, in collaboration with Adobe Inc., for building desktop applications and mobile applicat ...
). Pundits questioned its continued relevance even on the desktop and described it as "the beginning of the end".
Research In Motion BlackBerry Limited is a Canadian software company specializing in cybersecurity. Founded in 1984, it was originally known as Research In Motion (RIM). As RIM, it developed the BlackBerry brand of interactive pagers, smartphones, and tablet ...
(RIM) announced that it would continue to develop Flash for the
PlayBook Playbook may refer to: * BlackBerry PlayBook, a tablet computer by BlackBerry *A book that contains a script or story for a theatrical play. This written version of the composition is used in preparing for a performance **Fleury Playbook, a medieva ...
, a decision questioned by some commentators. Rumors state that Microsoft is to abandon Silverlight after version 5 is released. The combination of these announcements had some proclaiming it "the end of the line for browser plug-ins".


Rich mobile applications

A rich mobile application (RMA) is a
mobile application A mobile application or app is a computer program or software application designed to run on a mobile device such as a phone, tablet, or watch. Mobile applications often stand in contrast to desktop applications which are designed to run on des ...
that inherits numerous properties from rich web applications and features several explicit properties, such as
context awareness Context awareness refers, in information and communication technologies, to a capability to take into account the ''situation'' of ''entities'', which may be users or devices, but are not limited to those. ''Location'' is only the most obvious el ...
and ubiquity. RMAs are "energy efficient, multi-tier, online mobile applications originated from the convergence of
mobile cloud computing Mobile Cloud Computing (MCC) is the combination of cloud computing and mobile computing to bring rich computational resources to mobile users, network operators, as well as cloud computing providers.Fangming Liu, Peng Shu, Hai Jin, Linjie Ding, Jie ...
, future web, and imminent communication technologies envisioning to deliver rich user experience via high functionality, immersive interaction, and crisp response in a secure wireless environment while enabling context-awareness, offline usability, portability, and data ubiquity".


Origins of RMAs

After successful deployment of rich web applications to desktop computers and the increasing popularity of mobile devices, researchers brought these enhanced rich web application functionalities to the smartphone platform. NTT DoCoMo of Japan adopted
Adobe Flash Lite Adobe Flash Lite (formerly Macromedia Flash Lite) was a lightweight version of Adobe Flash Player, a software application published by Adobe Systems for viewing Flash content. Flash Lite operates on devices that Flash Player cannot, such as mobi ...
in 2003 to enhance mobile applications' functionality. In 2008, Google brought Google Gears to
Windows Mobile Windows Mobile is a discontinued family of mobile operating systems developed by Microsoft for smartphones and personal digital assistants. Its origin dated back to Windows CE in 1996, though Windows Mobile itself first appeared in 2000 as Pock ...
5 and 6 devices to support platform-neutral mobile applications in offline mode. Google Gears for mobile devices is a mobile browser extension for developing rich web applications. These applications can be executed inside the mobile device with a web browser regardless of the architecture, operating system and technology. In April 2008, Microsoft introduced
Microsoft Silverlight Microsoft Silverlight is a discontinued application framework designed for writing and running rich web applications, similar to Adobe's runtime, Adobe Flash. A plugin for Silverlight is still available for a very small number of browsers. W ...
mobile to develop engaging, interactive UIs for mobile devices. Silverlight is a .NET plug-in compatible with several mobile browsers that runs the Silverlight-enabled mobile apps. Android accommodated the Google Gear plug-in in the Google Chrome Lite browser to improve the interaction experience of Android end-users.


Technologies


Adobe Flash

Adobe Flash manipulates
vector Vector most often refers to: *Euclidean vector, a quantity with a magnitude and a direction *Vector (epidemiology), an agent that carries and transmits an infectious pathogen into another living organism Vector may also refer to: Mathematic ...
and raster graphics to provide animation of text, drawings, and still images. It supports bidirectional streaming of audio and video, and it can capture user input via mouse, keyboard, microphone, and camera. Flash contains an
object-oriented language Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
called
ActionScript ActionScript is an object-oriented programming language originally developed by Macromedia Inc. (later acquired by Adobe). It is influenced by HyperTalk, the scripting language for HyperCard. It is now an implementation of ECMAScript (meaning ...
and supports automation via the JavaScript Flash language (JSFL). Flash content may be displayed on various computer systems and devices, using
Adobe Flash Player Adobe Flash Player (known in Internet Explorer, Firefox, and Google Chrome as Shockwave Flash) is computer software for viewing multimedia contents, executing rich Internet applications, and streaming audio and video content created on the ...
, which is available free of charge for common web browsers, some
mobile phone A mobile phone, cellular phone, cell phone, cellphone, handphone, hand phone or pocket phone, sometimes shortened to simply mobile, cell, or just phone, is a portable telephone that can make and receive calls over a radio frequency link whi ...
s and a few other
electronic device The field of electronics is a branch of physics and electrical engineering that deals with the emission, behaviour and effects of electrons using electronic devices. Electronics uses active devices to control electron flow by amplification ...
s (using
Flash Lite Adobe Flash Lite (formerly Macromedia Flash Lite) was a lightweight version of Adobe Flash Player, a software application published by Adobe Systems for viewing Flash content. Flash Lite operates on devices that Flash Player cannot, such as mobi ...
). Apache Flex, formerly Adobe Flex, is a
software development kit A software development kit (SDK) is a collection of software development tools in one installable package. They facilitate the creation of applications by having a compiler, debugger and sometimes a software framework. They are normally specific ...
(SDK) for the development and deployment of cross-platform RIAs based on the
Adobe Flash Adobe Flash (formerly Macromedia Flash and FutureSplash) is a multimedia software platform used for production of animations, rich web applications, desktop applications, mobile apps, mobile games, and embedded web browser video players. Fla ...
platform. Initially developed by
Macromedia Macromedia, Inc., was an American graphics, multimedia, and web development software company (1992–2005) headquartered in San Francisco, California, that made products such as Flash and Dreamweaver. It was purchased by its rival Adobe System ...
and then acquired by Adobe Systems, Flex was donated by Adobe to the Apache Software Foundation in 2011.


Java applet

Java applets were used to create interactive visualizations and to present video, three-dimensional objects and other media. Java applets were appropriate for complex visualizations that required significant programming effort in a high level language or communications between applet and originating server.


JavaFX

JavaFX is a software platform for creating and delivering RIAs that can run across a wide variety of connected devices. The current release (JavaFX 12, March 11, 2019) enables building applications for desktop, browser and mobile phones and comes with 3D support. TV set-top boxes, gaming consoles, Blu-ray players and other platforms are planned. Java FX runs as plug-in Java applet or via Webstart.


Microsoft Silverlight

Silverlight was proposed by Microsoft as another proprietary alternative. The technology has not been widely accepted and, for instance, lacks support on many mobile devices. Some examples of application were video streaming for events including the 2008 Summer Olympics in Beijing, the
2010 Winter Olympics )'' , nations = 82 , athletes = 2,626 , events = 86 in 7 sports (15 disciplines) , opening = February 12, 2010 , closing = February 28, 2010 , opened_by = Governor General Michaëlle Jean , cauldron = Catriona Le May DoanNancy GreeneWayne Gret ...
in Vancouver, and the 2008 conventions for both major political parties in the United States. Silverlight was also used by
Netflix Netflix, Inc. is an American subscription video on-demand over-the-top streaming service and production company based in Los Gatos, California. Founded in 1997 by Reed Hastings and Marc Randolph in Scotts Valley, California, it offers a fi ...
for its instant video streaming service. Silverlight is no longer under active development and is not supported in Microsoft Edge, Microsoft's most recent browser.


Gears

''Gears'', formerly known as ''Google Gears'', is a discontinued
utility software Utility software is software designed to help analyze, configure, optimize or maintain a computer. It is used to support the computer infrastructure - in contrast to application software, which is aimed at directly performing tasks that benefit or ...
providing offline storage and other additional features to web browsers, including Google Chrome. Gears was discontinued in favor of the standardized
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
methods. Gears was removed from Google Chrome 12.


Other techniques

RIAs could use
XForms XForms is an XML format used for collecting inputs from web forms. XForms was designed to be the next generation of HTML / XHTML forms, but is generic enough that it can also be used in a standalone manner or with presentation languages other th ...
to enhance their functionality. Using
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
and XSLT along with some
XHTML Extensible HyperText Markup Language (XHTML) is part of the family of XML markup languages. It mirrors or extends versions of the widely used HyperText Markup Language (HTML), the language in which Web pages are formulated. While HTML, prior ...
, CSS and JavaScript can also be used to generate richer client side UI components like data tables that can be resorted locally on the client without going back to the server. Mozilla and Internet Explorer browsers both support this.


Security issues in older standards

RIAs present indexing challenges to
Web search engine A search engine is a software system designed to carry out web searches. They search the World Wide Web in a systematic way for particular information specified in a textual web search query. The search results are generally presented in a ...
s, but
Adobe Flash Adobe Flash (formerly Macromedia Flash and FutureSplash) is a multimedia software platform used for production of animations, rich web applications, desktop applications, mobile apps, mobile games, and embedded web browser video players. Fla ...
content is now at least partially indexable. Security can improve over that of
application software Application may refer to: Mathematics and computing * Application software, computer software designed to help the user to perform specific tasks ** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
(for example through use of sandboxes and automatic updates), but the extensions themselves remain subject to vulnerabilities and access is often much greater than that of native
Web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serv ...
s. For security purposes, most RIAs run their client portions within a special isolated area of the client desktop called a sandbox. The sandbox limits visibility and access to the file-system and to the operating system on the client to the application server on the other side of the connection. This approach allows the client system to handle local activities, reformatting and so forth, thereby lowering the amount and frequency of client-server traffic, especially versus client-server implementations built around so-called thin clients.Living in the RIA World: Blurring the Line Between Web and Desktop Security, 2008
/ref>


See also

*
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
* List of rich web application frameworks * PIGUI


References


External links


Accessible rich Internet applications (WAI-ARIA) 1.0
– W3C Candidate Recommendation 18 January 2011 {{DEFAULTSORT:Rich Internet Application Mobile software Rich web applications Software architecture Web 2.0