Rich web application
A rich web application (originally called a rich Internet application, or RIA or installable Internet application) is a web application that has many of the characteristics of desktop application software. The concept is closely related to a single-page application, and may allow the user interactive features such as drag and drop, background menu, WYSIWYG editing, etc. The concept was first introduced in 2002 by Macromedia to describe Macromedia Flash MX product (which later became Adobe Flash).[1] Throughout the 2000-s, the term was generalized to describe web applications developed with other competing browser plugin technologies including Java applets, Microsoft Silverlight.
With the deprecation of browser plugin interfaces and transition to standard HTML5 technologies, rich web applications were replaced with JavaScript web applications, including single-page applications and progressive web applications.
History
The terms "rich client" and "rich Internet application" were introduced in a white paper of March 2002 by Macromedia (now Adobe),[1] though the concept had existed for a number of years earlier under names including: "Remote Scripting" by Microsoft in April 1999,[2] "X Internet" by Forrester Research in October 2000,[3] Rich Web application.[4]
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 alternatives. Adobe announced that Flash would no longer be produced for mobile[5] or TV[6] (refocusing its efforts on Adobe AIR). Pundits questioned its continued relevance even on the desktop[7] and described it as "the beginning of the end".[8] Research In Motion (RIM) announced that it would continue to develop Flash for the PlayBook, a decision questioned by some commentators.[9] Rumors stated that Microsoft was to abandon Silverlight after the upcoming release of version 5 -- this would later turn out to be the case.[10][11] The combination of these announcements had some proclaiming it "the end of the line for browser plug-ins".[12]
Rich mobile applications
A rich mobile application (RMA) is a mobile application that inherits numerous properties from rich web applications and features several explicit properties, such as context awareness and ubiquity.[13][14][1] RMAs are "energy efficient, multi-tier, online mobile applications originated from the convergence of mobile cloud computing, 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".[15]
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 in 2003 to enhance mobile applications' functionality. In 2008, Google brought Google Gears to Windows Mobile 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 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 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 called ActionScript and supports automation via the JavaScript Flash language (JSFL). Flash content may be displayed on various computer systems and devices, using Adobe Flash Player, which is available free of charge for common web browsers, some mobile phones and a few other electronic devices (using Flash Lite).[16]
Apache Flex, formerly Adobe Flex, is a software development kit (SDK) for the development and deployment of cross-platform RIAs based on the Adobe Flash platform. Initially developed by Macromedia 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.[17]
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,[18] the 2010 Winter Olympics in Vancouver,[19] and the 2008 conventions for both major political parties in the United States.[20] Silverlight was also used by Netflix for its instant video streaming service.[21] 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 providing offline storage and other additional features to web browsers, including Google Chrome. Gears was discontinued in favor of the standardized HTML5 methods. Gears was removed from Google Chrome 12.[22]
Other techniques
RIAs could use XForms to enhance their functionality.[citation needed][original research?] Using XML and XSLT[23] along with some XHTML, 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 engines, but Adobe Flash content is now at least partially indexable.[24]
Security can improve over that of application software (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 applications. 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.[25]
See also
References
- ↑ 1.0 1.1 1.2 Macromedia Flash MX—A next-generation rich client
- ↑ Clinick, Andrew (1999-04-12). "Remote Scripting". https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/scripting-articles/ms974566(v=msdn.10).
- ↑ Colony, George F. (October 2000). "My View: X Internet". http://www.forrester.com/ER/Marketing/0,1503,214,00.html.
- ↑ Nations, Daniel. "Web Applications". About.com. http://webtrends.about.com/od/webapplications/a/web_application.htm.
- ↑ "Adobe Flash Player Turfed for Mobile Devices". http://www.theinfoboom.com/articles/adobe-flash-player-turfed-for-mobile-devices/.
- ↑ "Adobe Scrapping Flash for TV, Too". http://allthingsd.com/20111110/adobe-scrapping-flash-for-tv-too%E2%80%8E/.
- ↑ "PlayBook has a Flash-filled future; RIM's worst decision to date?". http://www.zdnet.com/blog/perlow/without-mobile-adobe-flash-is-irrelevant/19247.
- ↑ "The beginning of the end for Adobe's Flash". https://money.cnn.com/2011/11/10/technology/adobe_flash/.
- ↑ "PlayBook has a Flash-filled future; RIM's worst decision to date?". http://www.zdnet.com/blog/btl/playbook-has-a-flash-filled-future-rims-worst-decision-to-date/63118.
- ↑ "Silverlight 5 - the end of the line". http://www.i-programmer.info/news/89-net/3314-silverlight-5-the-end-of-the-line.html.
- ↑ "Silverlight End of Support - Microsoft Support". https://support.microsoft.com/en-us/windows/silverlight-end-of-support-0a3be3c7-bead-e203-2dfd-74f0a64f1788.
- ↑ "Flash, Silverlight and the end of the line for browser plug-ins". http://www.geekwire.com/2011/adobe-flash-microsoft-silverlight-sunset-browser-plugin.
- ↑ Khan, Atta ur Rehman; Othman, Mazliza; Khan, Abdul Nasir; Abid, Shahbaz Akhtar; Madani, Sajjad Ahmad (2015-04-23). "MobiByte: An Application Development Model for Mobile Cloud Computing" (in en). Journal of Grid Computing 13 (4): 605–628. doi:10.1007/s10723-015-9335-x. ISSN 1570-7873.
- ↑ Khan, A. u R.; Othman, M.; Xia, F.; Khan, A. N. (2015-05-01). "Context-Aware Mobile Cloud Computing and Its Challenges". IEEE Cloud Computing 2 (3): 42–49. doi:10.1109/MCC.2015.62. ISSN 2325-6095.
- ↑ Abolfazli, Saeid; Sanaei, Zohreh; Gani, Abdullah; Xia, Feng; Yang, Laurence T. (1 September 2013). "Rich Mobile Applications: Genesis, taxonomy, and open issues". Journal of Network and Computer Applications 40: 345–362. doi:10.1016/j.jnca.2013.09.009.
- ↑ McCune, Doug; Subramaniam, Deepa (2009-02-23) (in en). Adobe Flex 3.0 For Dummies. John Wiley & Sons. ISBN 978-0-470-43682-0. https://books.google.com/books?id=lazbXwrxrasC.
- ↑ "JavaFX 2.2 Release Notes | JavaFX 2 Tutorials and Documentation". https://docs.oracle.com/javafx/2/release_notes_2-2/jfxpub-release_notes_2-2.htm.
- ↑ "Microsoft Silverlight Gets a High Profile Win: 2008 Beijing Olympics". https://techcrunch.com/2008/01/06/microsoft-silverlight-gets-a-high-profile-win-2008-bejing-olympics/.
- ↑ "Microsoft Wins The 2010 Olympics For Silverlight". http://www.businessinsider.com/microsoft-wins-the-2010-olympics-for-silverlight-2009-3.
- ↑ "Microsoft Working to Make Political Conventions Unconventional". http://www.microsoft.com/presspass/features/2008/aug08/08-19conventions.mspx.
- ↑ "Netflix Begins Roll-Out of 2nd Generation Media Player for Instant Streaming on Windows PCs and Intel Macs". http://netflix.mediaroom.com/index.php?s=43&item=288.
- ↑ "Chrome Stable Release" (in en). https://chromereleases.googleblog.com/2011/06/chrome-stable-release.html.
- ↑ "Transformation". 2012-09-19. http://www.w3.org/standards/xml/transformation.
- ↑ Erick Schonfeld. "Once Nearly Invisible To Search Engines, Flash Files Can Now Be Found And Indexed". TechCrunch. AOL. https://techcrunch.com/2008/06/30/once-nearly-invisible-to-search-engines-flash-files-can-now-be-found-and-indexed/.
- ↑ Living in the RIA World: Blurring the Line Between Web and Desktop Security, 2008
External links
- Accessible rich Internet applications (WAI-ARIA) 1.0 – W3C Candidate Recommendation 18 January 2011