Misplaced Pages

Rich Internet Application: Difference between revisions

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Browse history interactively← Previous editContent deleted Content addedVisualWikitext
Revision as of 10:44, 23 November 2016 editAnomieBOT (talk | contribs)Bots6,561,224 editsm Dating maintenance tags: {{Fact}} {{Or}} {{Dead}}← Previous edit Latest revision as of 16:39, 5 July 2024 edit undoGreenC bot (talk | contribs)Bots2,547,818 edits Move 2 urls. Wayback Medic 2.5 per WP:URLREQ#zdnet.com 
(107 intermediate revisions by 51 users not shown)
Line 1: Line 1:
{{Short description|Web application technology}}
A '''rich Internet application''' ('''RIA'''; sometimes called an Installable Internet Application) is a ] that has many of the characteristics of desktop ], typically delivered by way of a ], a browser ], an independent ], extensive use of ], or a ].<ref></ref> ], ],<ref>{{cite web|url=http://docs.oracle.com/javase/8/javase-clienttechnologies.htm |title=JavaFX Docs|publisher=oracle|work=oracle}}</ref> and ] are currently the three most common ].<ref>"Rich Internet Application Market Share", Data from StatOwl. http://www.statowl.com/custom_ria_market_penetration.php{{dead|date=November 2016}} -- StatOwl data is from ~28m unique visitors per month.; This data is consistent with that reported from RIAStats.com, which is based on ~4m daily visitors http://riastats.com/{{dead|date=November 2016}}. These statistics clearly indicate consistent evidence that Flash, Silverlight, Java, and HTML5 are available to over 50% of web users as of summer 2011. See also "Rich Internet Applications: The Next Frontier of Corporate Development" by Larry Seltzer. 2010-08-25. eWeek. http://www.eweek.com/c/a/Security/Rich-Internet-Applications-The-Next-Frontier-of-Corporate-Development-732651/</ref>
{{About|legacy technology no longer used by modern browsers|its modern equivalent|Progressive web application}}


A '''Rich Internet Application''' (also known as a '''rich web application''',<ref name="flex3dummies">{{cite book |last=McCune |first=Doug |url=https://books.google.com/books?id=lazbXwrxrasC |title=Adobe Flex 3.0 For Dummies |date=2009-02-23 |publisher=John Wiley & Sons |isbn=978-0470436820 |page=Chapter 1, "From HTML to RIA"}}</ref> '''RIA''' or '''installable Internet application''') is a ] that has many of the characteristics of desktop ]. The concept is closely related to a ], and may allow the user interactive features such as ], background menu, ] editing, etc. The concept was first introduced in 2002 by ] to describe Macromedia Flash MX product (which later became ]).<ref name=":0"></ref> Throughout the 2000s, the term was generalized to describe browser-based applications developed with other competing browser plugin technologies including ], ].
Google trends shows (as of September 2012) that frameworks based on a plug-in are in the process of being replaced by ]/]-based alternatives.<ref>{{cite web|title= RIA Trends (Google Trends: adobe flex,silverlight,javaapplet,HTML5 )|url=http://www.google.com/trends/?q=adobe++flex,+microsoft+silverlight,+java++applet,+HTML5,+gwt&ctab=0&geo=all&date=all&sort=0|accessdate=2012-09-19}}</ref><ref>{{cite web|title= RIA Trends (Google Trends: Adobe flex, ExtJS, GWT, Vaadin )|url=http://www.google.com/trends/?q=adobe++flex,++extjs,+gwt,+vaadin&ctab=0&geo=all&date=all&sort=0|accessdate=2012-09-19}}</ref>


With the ] of browser ] interfaces and transition to standard ] technologies, Rich Internet Applications were replaced with JavaScript ], including ] and ].
Users generally need to install a ] using the computer's ] before launching the application, which typically downloads, updates, verifies and executes the RIA.<ref>{{cite web|url=http://today.java.net/pub/a/today/2005/03/22/laszlo.html|title=Laszlo: An Open Source Framework for Rich Internet Applications|publisher=|accessdate=2 May 2015}}</ref> This is the main differentiator from ]/]-based alternatives like ] that use built-in browser functionality to implement comparable interfaces. As can be seen on the ] which includes even server-side frameworks, while some consider such interfaces to be RIAs, some consider them competitors to RIAs; and others, including ], treat them as similar but separate technologies.<ref>{{cite web|url=http://www.gartner.com/DisplayDocument?doc_cd=164266|title=MarketScope for Ajax Technology and RIA Platforms|date=29 December 2008|publisher=|accessdate=2 May 2015}}</ref>


==History==
RIAs dominate in ] as well as applications that require access to video capture (with the notable exception of ], which uses its own task-specific browser plug-in).<ref>{{cite web|url=http://mail.google.com/videochat|title=Hangouts|publisher=|accessdate=2 May 2015}}</ref> ] such as ] have developed and the compliance of ]s with those standards has improved somewhat.
The terms "Rich Internet Application" and "rich client" were introduced in a ] of March 2002 by ] (now ]),<ref name=":0" /> though the concept had existed for a number of years earlier under names including: "]" by ] in April 1999<ref>{{cite web|last=Clinick|first=Andrew|date=1999-04-12|title=Remote Scripting|url=https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/scripting-articles/ms974566(v=msdn.10)|access-date=2019-07-10|website=]|df=dmy}}</ref> and the "X Internet" by ] in October 2000.<ref>{{cite web|last=Colony|first=George F.|date=October 2000|title=My View: X Internet|url=http://www.forrester.com/ER/Marketing/0,1503,214,00.html|archive-url=https://web.archive.org/web/20080518194414/http://www.forrester.com/ER/Marketing/0,1503,214,00.html|archive-date=2008-05-18|website=]|df=dmy}}</ref>


In November 2011, there were a number of announcements that demonstrated a decline in demand for Rich Internet Application architectures based on browser plug-ins in order to favor ] alternatives. Adobe announced that Flash would no longer be produced for mobile<ref>{{cite web|title=Adobe Flash Player Turfed for Mobile Devices|url=http://www.theinfoboom.com/articles/adobe-flash-player-turfed-for-mobile-devices/|access-date=11 November 2011}}</ref> or TV<ref>{{cite web|title=Adobe Scrapping Flash for TV, Too|url=http://allthingsd.com/20111110/adobe-scrapping-flash-for-tv-too%E2%80%8E/|access-date=11 November 2011}}</ref> (refocusing its efforts on ]). Pundits questioned its continued relevance even on the desktop<ref>{{cite web|title=PlayBook has a Flash-filled future; RIM's worst decision to date?|url=https://www.zdnet.com/article/without-mobile-adobe-flash-is-irrelevant/}}</ref> and described it as "the beginning of the end".<ref>{{cite web|title=The beginning of the end for Adobe's Flash|url=https://money.cnn.com/2011/11/10/technology/adobe_flash/|access-date=11 November 2011}}</ref> ] (RIM) announced that it would continue to develop Flash for the ], a decision questioned by some commentators.<ref>{{cite web|title=PlayBook has a Flash-filled future; RIM's worst decision to date?|url=https://www.zdnet.com/article/playbook-has-a-flash-filled-future-rims-worst-decision-to-date/|access-date=11 November 2011}}</ref> Rumors stated that Microsoft was to abandon Silverlight after the upcoming release of version 5 -- this would later turn out to be the case.<ref>{{cite web|title=Silverlight 5 - the end of the line|url=http://www.i-programmer.info/news/89-net/3314-silverlight-5-the-end-of-the-line.html|access-date=11 November 2011}}</ref><ref>{{Cite web |title=Silverlight End of Support - Microsoft Support |url=https://support.microsoft.com/en-us/windows/silverlight-end-of-support-0a3be3c7-bead-e203-2dfd-74f0a64f1788 |access-date=2023-04-01 |website=support.microsoft.com}}</ref> The combination of these announcements had some proclaiming it "the end of the line for browser plug-ins".<ref>{{cite web|title=Flash, Silverlight and the end of the line for browser plug-ins|url=http://www.geekwire.com/2011/adobe-flash-microsoft-silverlight-sunset-browser-plugin}}</ref>
==Techniques==

=== Rich mobile applications ===
A '''rich mobile application''' (RMA) is a ] that inherits numerous properties from web applications and features several explicit properties, such as ] and ubiquity.<ref>{{Cite journal|last=Khan|first=Atta ur Rehman|last2=Othman|first2=Mazliza|last3=Khan|first3=Abdul Nasir|last4=Abid|first4=Shahbaz Akhtar|last5=Madani|first5=Sajjad Ahmad|date=2015-04-23|title=MobiByte: An Application Development Model for Mobile Cloud Computing|journal=Journal of Grid Computing|language=en|volume=13|issue=4|pages=605–628|doi=10.1007/s10723-015-9335-x|issn=1570-7873}}</ref><ref>{{Cite journal|last=Khan|first=A. u R.|last2=Othman|first2=M.|last3=Xia|first3=F.|last4=Khan|first4=A. N.|date=2015-05-01|title=Context-Aware Mobile Cloud Computing and Its Challenges|journal=IEEE Cloud Computing|volume=2|issue=3|pages=42–49|doi=10.1109/MCC.2015.62|issn=2325-6095}}</ref><ref name=":0" /> RMAs are "energy efficient, multi-tier, online mobile applications originated from the convergence of ], 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".<ref name="RMA_article">{{cite journal|last1=Abolfazli|first1=Saeid|last2=Sanaei|first2=Zohreh|last3=Gani|first3=Abdullah|last4=Xia|first4=Feng|last5=Yang|first5=Laurence T.|date=1 September 2013|title=Rich Mobile Applications: Genesis, taxonomy, and open issues|journal=Journal of Network and Computer Applications|volume=40|pages=345–362|doi=10.1016/j.jnca.2013.09.009}}</ref>

==== Origins of RMAs ====
After successful deployment of web applications to desktop computers and the increasing popularity of mobile devices, researchers brought these enhanced web application functionalities to the smartphone platform. ] of Japan adopted ] in 2003 to enhance mobile applications' functionality. In 2008, Google brought ] to ] 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 web applications enriched by a separate, user-installable add-on. 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 ] 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. ] 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===
{{Main article|Adobe Flash}} {{Main article|Adobe Flash}}
'''Adobe Flash''' manipulates ] and ] to provide animation of text, drawings, and still images. It supports bidirectional ] of audio and video, and it can capture user input via mouse, keyboard, microphone, and camera. Flash contains an ] called ] and supports automation via the JavaScript Flash language (JSFL). Flash content may be displayed on various computer systems and ], using ], which is available free of charge for common ]s, some ]s and a few other ]s (using ]).


Adobe Flash manipulates ] and ] to provide animation of text, drawings, and still images. It supports bidirectional ] of audio and video, and it can capture user input via mouse, keyboard, microphone, and camera. Flash contains an ] called ] and supports automation via the JavaScript Flash language (JSFL). Flash content may be displayed on various computer systems and ], using ], which is available free of charge for common web browsers, some ]s and a few other ]s (using ]).<ref>{{Cite book |last=McCune |first=Doug |url=https://books.google.com/books?id=lazbXwrxrasC |title=Adobe Flex 3.0 For Dummies |last2=Subramaniam |first2=Deepa |date=2009-02-23 |publisher=John Wiley & Sons |isbn=978-0-470-43682-0 |language=en}}</ref>
'''Apache Flex''', formerly '''Adobe Flex''', is a ] (SDK) for the development and deployment of cross-platform RIAs based on the ] platform. Initially developed by ] and then acquired by ], Flex was donated by Adobe to the ] in 2011.

Apache Flex, formerly Adobe Flex, is a ] (SDK) for the development and deployment of cross-platform RIAs based on the ] platform. Initially developed by ] and then acquired by ], Flex was donated by Adobe to the ] in 2011.


===Java applet=== ===Java applet===
{{Main article|Java applet}} {{Main article|Java applet}}
]s are used to create interactive visualizations and to present video, three dimensional objects and other media. Java applets are more appropriate for complex visualizations that require significant programming effort in high level language or communications between applet and originating server. Java applets were used to create ] 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===
{{Main article|JavaFX}} {{Main article|JavaFX}}
] is a software platform for creating and delivering RIAs that can run across a wide variety of connected devices. The current release (JavaFX 8, July 2016) enables building applications for desktop, browser and mobile phones and comes with 3D support. RIA for mobile phones is called ]. TV set-top boxes, gaming consoles, Blu-ray players and other platforms are planned. Java FX runs as plug-in ] or via ]. 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 ].<ref>{{Cite web |title=JavaFX 2.2 Release Notes {{!}} JavaFX 2 Tutorials and Documentation |url=https://docs.oracle.com/javafx/2/release_notes_2-2/jfxpub-release_notes_2-2.htm |access-date=2022-11-24 |website=docs.oracle.com}}</ref>


===Microsoft Silverlight=== ===Microsoft Silverlight===
{{Main article|Microsoft Silverlight}} {{Main article|Microsoft 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 ] in Beijing,<ref>{{cite web|url=http://techcrunch.com/2008/01/06/microsoft-silverlight-gets-a-high-profile-win-2008-bejing-olympics/ |title=Microsoft Silverlight Gets a High Profile Win: 2008 Beijing Olympics| accessdate=2010-02-23}}</ref> the ] in Vancouver,<ref>{{cite web|url=http://www.businessinsider.com/microsoft-wins-the-2010-olympics-for-silverlight-2009-3 |title=Microsoft Wins The 2010 Olympics For Silverlight| accessdate=2010-02-23}}</ref> and the 2008 conventions for both major political parties in the United States.<ref>{{cite web|url=http://www.microsoft.com/presspass/features/2008/aug08/08-19conventions.mspx | title = Microsoft Working to Make Political Conventions Unconventional|accessdate=2010-02-23}}</ref> Silverlight was also used by ] for its instant video streaming service.<ref>{{cite web|url=http://netflix.mediaroom.com/index.php?s=43&item=288 |title = Netflix Begins Roll-Out of 2nd Generation Media Player for Instant Streaming on Windows PCs and Intel Macs|accessdate=2010-02-23}}</ref> Silverlight is no longer under active development and is not supported in Microsoft Edge, Microsoft's most recent browser. 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 ] in Beijing,<ref>{{cite web|url=https://techcrunch.com/2008/01/06/microsoft-silverlight-gets-a-high-profile-win-2008-bejing-olympics/ |title=Microsoft Silverlight Gets a High Profile Win: 2008 Beijing Olympics| access-date=2010-02-23}}</ref> the ] in Vancouver,<ref>{{cite web|url=http://www.businessinsider.com/microsoft-wins-the-2010-olympics-for-silverlight-2009-3 |title=Microsoft Wins The 2010 Olympics For Silverlight| access-date=2010-02-23}}</ref> and the 2008 conventions for both major political parties in the United States.<ref>{{cite web |url=http://www.microsoft.com/presspass/features/2008/aug08/08-19conventions.mspx |title=Microsoft Working to Make Political Conventions Unconventional |access-date=2010-02-23 |url-status=dead |archive-url=https://web.archive.org/web/20100519135325/http://www.microsoft.com/presspass/features/2008/aug08/08-19conventions.mspx |archive-date=2010-05-19 }}</ref> Silverlight was also used by ] for its instant video streaming service.<ref>{{cite web |url=http://netflix.mediaroom.com/index.php?s=43&item=288 |title=Netflix Begins Roll-Out of 2nd Generation Media Player for Instant Streaming on Windows PCs and Intel Macs |access-date=2010-02-23 |url-status=dead |archive-url=https://web.archive.org/web/20100529122655/http://netflix.mediaroom.com/index.php?s=43&item=288 |archive-date=2010-05-29 }}</ref> Silverlight is no longer under active development and is not supported in ], Microsoft's most recent browser.

===Other Techniques===
RIAs could use ] to enhance their functionality.{{fact|date=November 2016}}{{or|date=November 2016}} Using ] and ]<ref name="Transformation">{{cite web|url=http://www.w3.org/standards/xml/transformation |title=Transformation|date=2012-09-19}}</ref> along with some ], 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.

==HTML5/JavaScript==

===Ember.js===
{{Main article|Ember.js}}
''']''' is an open-source client-side JavaScript web application framework based on the model-view-controller (MVC) software architectural pattern.

===ExtJS===
{{Main article|ExtJS}}
''']''' is a pure ] ] for building interactive ]s<ref>(see also, Rich Internet application</ref> using techniques such as ], ] and ] scripting.

===GWT===
{{Main article|Google Web Toolkit}}
] is an ] set of ] that allows ]s to create and maintain complex ] ] applications in ]. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT ] build files. It is licensed under the ] version 2.0.

===Vaadin===
{{Main article|Vaadin}}
] is an ] Web application framework for rich Internet applications. In contrast to ] libraries and browser-plugin based solutions, it features a server-side architecture, which means that the majority of the logic runs on the servers. Ajax technology is used at the browser-side to ensure a rich and interactive user experience. The client-side portion of Vaadin is built on top of ] and can be extended with it.

==History==
The term "rich Internet application" was introduced in a ] of March 2002 by ] (now merged into ]),<ref></ref> though the concept had existed for a number of years earlier under names including ], by ], c. 1999, X Internet, by in October 2000,<ref>{{cite web|url=http://javafxtuts.com/javafx-tutorials/ |title=JavaFX Tutorial|author=Erick Schonfeld|publisher=AOL|work=JavaFXTuts|accessdate=2 May 2015}}</ref> Rich (Web) clients, and Rich ].<ref>{{cite web|last=Nations|first=Daniel|title=Web Applications|url=http://webtrends.about.com/od/webapplications/a/web_application.htm |work=About.com|accessdate=20 January 2014}}</ref>

==Design, distribution, cost==
Rich Internet applications use a Rich Client deployment model (deployment of a compiled client application through a browser) rather than a ]-server model (where the user's view is largely controlled from the server).

Flash, Silverlight and ] are application platforms accessed by the user's web browser as plug-ins. These application platforms limit the amount of data downloaded during initialization to only what is necessary to display the page. The browser plug-in is only downloaded once, and does not need to be re-downloaded every time the page is displayed; this reduces application load time, bandwidth requirements, and server load.

Proponents of RIAs assert that the cost of RIA development and O&M is typically lower than that of HTML-based alternatives due to increased developer productivity and standardized, backwards compatible nature of the application platform runtime environments. A 2010 study conducted by ] predicted an average savings of approximately $450,000 per application in the case of Flash platform development (in conjunction with use of the open source ] SDK), a 39% reduction in cost over a three-year period.<ref></ref>


==Characteristics== === Gears ===
{{Main|Gears (software)}}
RIAs present indexing challenges to ]s, but ] content is now at least partially indexable.<ref>{{cite web|url=http://www.techcrunch.com/2008/06/30/once-nearly-invisible-to-search-engines-flash-files-can-now-be-found-and-indexed/|title=Once Nearly Invisible To Search Engines, Flash Files Can Now Be Found And Indexed|author=Erick Schonfeld|publisher=AOL|work=TechCrunch|accessdate=2 May 2015}}</ref>
''Gears'', formerly known as ''Google Gears'', is a discontinued ] providing offline storage and other additional features to web browsers, including ]. Gears was discontinued in favor of the standardized ] methods. Gears was removed from Google Chrome 12.<ref>{{Cite web|title=Chrome Stable Release|url=https://chromereleases.googleblog.com/2011/06/chrome-stable-release.html|access-date=2021-04-12|website=Chrome Releases|language=en}}</ref>


===Other techniques===
Security can improve over that of ] (for example through use of ]es and automatic updates), but the extensions themselves remain subject to ] and access is often much greater than that of native ]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 ]s.<ref></ref>
RIAs could use ] to enhance their functionality.{{citation needed|date=November 2016}}{{original research inline|date=November 2016}} Using ] and ]<ref name="Transformation">{{cite web|url=http://www.w3.org/standards/xml/transformation |title=Transformation|date=2012-09-19}}</ref> along with some ], 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==
==New trends==
RIAs present indexing challenges to ]s, but ] content is now at least partially indexable.<ref>{{cite web|url=https://techcrunch.com/2008/06/30/once-nearly-invisible-to-search-engines-flash-files-can-now-be-found-and-indexed/|title=Once Nearly Invisible To Search Engines, Flash Files Can Now Be Found And Indexed|author=Erick Schonfeld|publisher=AOL|work=TechCrunch|access-date=2 May 2015}}</ref>
{{Update section|date=December 2015}}


Security can improve over that of ] (for example through use of ]es and automatic updates), but the extensions themselves remain subject to ] and access is often much greater than that of native ]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.<ref></ref>
In November 2011, there were a number of announcements that demonstrated a decline in demand for rich internet application architectures based on plug-ins in order to favor HTML5 alternatives. Adobe announced that Flash would no longer be produced for mobile<ref>{{cite web|title=Adobe Flash Player Turfed for Mobile Devices|url=http://www.theinfoboom.com/articles/adobe-flash-player-turfed-for-mobile-devices/|accessdate=11 November 2011}}</ref> or TV<ref>{{cite web|title=Adobe Scrapping Flash for TV, Too|url=http://allthingsd.com/20111110/adobe-scrapping-flash-for-tv-too%E2%80%8E/|accessdate=11 November 2011}}</ref> (refocusing its efforts on ]). Pundits questioned its continued relevance even on the desktop<ref>{{cite web|title=PlayBook has a Flash-filled future; RIM's worst decision to date?|url=http://www.zdnet.com/blog/perlow/without-mobile-adobe-flash-is-irrelevant/19247}}</ref> and described it as "the beginning of the end".<ref>{{cite web|title=The beginning of the end for Adobe's Flash|url=http://money.cnn.com/2011/11/10/technology/adobe_flash/|accessdate=11 November 2011}}</ref> ] (RIM) announced that it would continue to develop Flash for the ], a decision questioned by some commentators.<ref>{{cite web|title=PlayBook has a Flash-filled future; RIM's worst decision to date?|url=http://www.zdnet.com/blog/btl/playbook-has-a-flash-filled-future-rims-worst-decision-to-date/63118|accessdate=11 November 2011}}</ref> Rumors state that Microsoft is to abandon Silverlight after version 5 is released.<ref>{{cite web|title=Silverlight 5 - the end of the line|url=http://www.i-programmer.info/news/89-net/3314-silverlight-5-the-end-of-the-line.html|accessdate=11 November 2011}}</ref> The combination of these announcements had some proclaiming it "the end of the line for browser plug-ins".<ref>{{cite web|title=Flash, Silverlight and the end of the line for browser plug-ins|url=http://www.geekwire.com/2011/adobe-flash-microsoft-silverlight-sunset-browser-plugin}}</ref>


==See also== ==See also==
* ] * ]
* ] * ]
* ] * ]


Line 77: Line 59:


==External links== ==External links==
* - W3C Candidate Recommendation 18 January 2011 * W3C Candidate Recommendation 18 January 2011
* , W3C


{{Rich Internet applications}} {{Rich web applications}}
{{Web interfaces}} {{Web interfaces}}
{{Web browsers}} {{Web browsers}}


{{DEFAULTSORT:Rich Internet Application}} {{DEFAULTSORT:Rich Internet Application}}
] ]
] ]
] ]
] ]

Latest revision as of 16:39, 5 July 2024

Web application technology This article is about legacy technology no longer used by modern browsers. For its modern equivalent, see Progressive web application.

A Rich Internet Application (also known as a rich web application, 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). Throughout the 2000s, the term was generalized to describe browser-based 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 Internet Applications were replaced with JavaScript web applications, including single-page applications and progressive web applications.

History

The terms "Rich Internet Application" and "rich client" were introduced in a white paper of March 2002 by Macromedia (now Adobe), though the concept had existed for a number of years earlier under names including: "Remote Scripting" by Microsoft in April 1999 and the "X Internet" by Forrester Research in October 2000.

In November 2011, there were a number of announcements that demonstrated a decline in demand for Rich Internet Application architectures based on browser plug-ins in order to favor HTML5 alternatives. Adobe announced that Flash would no longer be produced for mobile or TV (refocusing its efforts on Adobe AIR). Pundits questioned its continued relevance even on the desktop and described it as "the beginning of the end". Research In Motion (RIM) announced that it would continue to develop Flash for the PlayBook, a decision questioned by some commentators. Rumors stated that Microsoft was to abandon Silverlight after the upcoming release of version 5 -- this would later turn out to be the case. 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 that inherits numerous properties from web applications and features several explicit properties, such as context awareness and ubiquity. 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".

Origins of RMAs

After successful deployment of web applications to desktop computers and the increasing popularity of mobile devices, researchers brought these enhanced 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 web applications enriched by a separate, user-installable add-on. 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

Main article: 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).

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

Main article: 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

Main article: 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

Main article: 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 in Vancouver, and the 2008 conventions for both major political parties in the United States. Silverlight was also used by Netflix 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

Main article: Gears (software)

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.

Other techniques

RIAs could use XForms to enhance their functionality. Using XML and XSLT 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.

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.

See also

References

  1. McCune, Doug (2009-02-23). Adobe Flex 3.0 For Dummies. John Wiley & Sons. p. Chapter 1, "From HTML to RIA". ISBN 978-0470436820.
  2. ^ Macromedia Flash MX—A next-generation rich client
  3. Clinick, Andrew (12 April 1999). "Remote Scripting". Microsoft Docs. Retrieved 2019-07-10.
  4. Colony, George F. (October 2000). "My View: X Internet". Forrester Research. Archived from the original on 2008-05-18.
  5. "Adobe Flash Player Turfed for Mobile Devices". Retrieved 11 November 2011.
  6. "Adobe Scrapping Flash for TV, Too". Retrieved 11 November 2011.
  7. "PlayBook has a Flash-filled future; RIM's worst decision to date?".
  8. "The beginning of the end for Adobe's Flash". Retrieved 11 November 2011.
  9. "PlayBook has a Flash-filled future; RIM's worst decision to date?". Retrieved 11 November 2011.
  10. "Silverlight 5 - the end of the line". Retrieved 11 November 2011.
  11. "Silverlight End of Support - Microsoft Support". support.microsoft.com. Retrieved 2023-04-01.
  12. "Flash, Silverlight and the end of the line for browser plug-ins".
  13. 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". Journal of Grid Computing. 13 (4): 605–628. doi:10.1007/s10723-015-9335-x. ISSN 1570-7873.
  14. 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.
  15. 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.
  16. McCune, Doug; Subramaniam, Deepa (2009-02-23). Adobe Flex 3.0 For Dummies. John Wiley & Sons. ISBN 978-0-470-43682-0.
  17. "JavaFX 2.2 Release Notes | JavaFX 2 Tutorials and Documentation". docs.oracle.com. Retrieved 2022-11-24.
  18. "Microsoft Silverlight Gets a High Profile Win: 2008 Beijing Olympics". Retrieved 2010-02-23.
  19. "Microsoft Wins The 2010 Olympics For Silverlight". Retrieved 2010-02-23.
  20. "Microsoft Working to Make Political Conventions Unconventional". Archived from the original on 2010-05-19. Retrieved 2010-02-23.
  21. "Netflix Begins Roll-Out of 2nd Generation Media Player for Instant Streaming on Windows PCs and Intel Macs". Archived from the original on 2010-05-29. Retrieved 2010-02-23.
  22. "Chrome Stable Release". Chrome Releases. Retrieved 2021-04-12.
  23. "Transformation". 2012-09-19.
  24. Erick Schonfeld. "Once Nearly Invisible To Search Engines, Flash Files Can Now Be Found And Indexed". TechCrunch. AOL. Retrieved 2 May 2015.
  25. Living in the RIA World: Blurring the Line Between Web and Desktop Security, 2008

External links

Rich Internet Applications
Basic frameworks
Site-specific browsers
Web interfaces
Server-side
Protocols
Server APIs
Apache modules
Topics
Client-side
Browser APIs
Web APIs
WHATWG
W3C
Khronos
Others
Topics
Related topics
Web browsers
  • Features
  • standards
  • protocols
Features
Web standards
Protocols
Active
Blink-based
Proprietary
FOSS
Gecko-based
WebKit-based
Multi-engine
Other
Discontinued
Blink-based
Gecko-based
MSHTML-based
WebKit-based
Other
Categories: