Client Side Development 2 - RiWAs

Rich Web Base Applications

Rich Internet applications (RIA) are Web-based applications that have some characteristics of graphical desktop applications. Built with powerful development tools, RIAs can run faster and be more engaging. They can offer users a better visual experience and more interactivity than traditional browser applications that use only HTML and HTTP.

RiWAs Features

Direct Interaction :-
An RIA can use a wider range of controls that allow greater efficiency and enhance the user experience. In RIAs, for example, users can interact directly with page elements through editing or drag-and-drop tools. They can also do things like pan across a map or other image.

Partial page updating :-
RIAs incorporate additional technologies, such as real-time streaming, high-performance client-side virtual machines, and local caching mechanisms that reduce latency (wait times) and increase responsiveness.

Better Feedback :-
Because of their ability to change parts of pages without reloading, RIAs can provide the user with fast and accurate feedback, real-time confirmation of actions and choices, and informative and detailed error messages.

Offline Use :-
When connectivity is unavailable, it might still be possible to use an RIA if the app is designed to retain its state locally on the client machine.

Performance Impact :-
Depending on the application and network characteristics, RIAs can often perform better than traditional apps. In particular, applications that avoid round trips to the server by processing locally on the client are likely to be noticeably faster.


Tools Used in RiWAs

Dojo
       This is an open source Library, not Framework that provides language utilities, Ul components, rich GUI controls, event handling and more

Adobe Flex
        Development cross platform rich internet applications based on the adobe Flash platform.

Ms SilverLight
        This application framework for writing and running rich internet application, similar  to adobe flash.

JavaFx
        This is a scripting language built on top of Java that provide FXML, a declarative XML markup language that describes the graphical components in your application.

Ruby on Rails
       Web application framework providing default structure for a database, a web service, and web pages. This facilitate the use of web standards such as JSON or XML for data transfer , and HTML, CSS and JavaScript for display and user interfacing.

JavaServer Faces-
ASP.NET Ajax


Ajax

         Ajax is short for Asynchronous JavaScript and XML, which refers to a set of web development techniques rather than an actual programming language. Ajax however, is widely used in client-side programming (e.g. JavaScript) to allow for data to be sent and received to and from a database / server. What’s special about using Ajax programming is that you can exchange data in the background without actually disturbing the user experience.



Ajax Methods

The following takes place when requesting the same data, however, this time using the Ajax method.
  1. The browser performs a JavaScript call to the Ajax engine. In other words, create an XML HttpRequest object.
  2. In the background, an HTTP request is made to the server and the appropriate data is retrieved.
  3. HTML, XML, or JavaScript data is returned to the Ajax engine which then delivers the requested data to the browser.
Using this method, the user does not experience any downtime from the point when they made a request to the point when they receive the actual information

 XMLHttpRequest (XHR)

XMLHttpRequest is an API in the form of an object whose methods transfer data between a web browser and a web server. The object is provided by the browser's JavaScript environment.


The XMLHttpRequest Object

The XMLHttpRequest object can be used to request data from a web server.
The XMLHttpRequest object is a developers dream, because you can:
  • Update a web page without reloading the page
  • Request data from a server - after the page has loaded
  • Receive data from a server  - after the page has loaded
  • Send data to a server - in the background

Comments

Popular posts from this blog

What Is Programming

Distrbuted Systems