How to achieve ODS

?

Most development innovations converge in one direction - improving rich web applications to make them easier to program and use, improve performance and capabilities. As if RIA wants to supplant traditional office software. However, although new tools facilitate the programming process, new technologies make it more complex, and a choice must be made before starting to develop ODS.

Description and perspectives

Define RIA as a web application, a program hosted on a server and running in a browser that has all the functions of a local application, for example, a word processing program. RIA has a graphical user interface as a local application.
However, for security reasons (it was possible to connect to malware), RIA operates in a clean environment called a sandbox.
To take advantage of these advantages when working with simple web applications, you must download the runtime to the client computer.

With the new technologies we will detail and the new opportunities they provide, RIA has so many advantages over on-premises applications that they can only replace them in the short term, a trend that can be seen at all levels: new development tools, investments and buyouts of companies, offering jobs (server management, webmasters).

Advantages for the editor

He no longer has to deal with a port to Windows, Linux or Mac: the application does not depend on the user's system.
It is given out of all the tasks of the distribution kit in order to update the software with a new version, it is enough for him to post it on the Internet.
Perhaps he can supplement his income by adding ads to the interface.

Benefits for the user

Installation is not required, except for the framework.
The app still runs on its operating system, even if it's Linux or Mac.
He still has the latest version. It uses software at any station, office or mobile (unless its data is stored locally).
He is not afraid of viruses or material breakdowns.

ODS methods

Asynchronous mode

Asynchronous mode is starting operations and returning hands to the user without waiting for a server response. RIA frameworks include Ajax for this mode of operation.
To this, you can add a prefetching function, which consists in anticipating needs and initiating requests for answers without waiting. For example, if a map is displayed, Google Maps loads adjacent areas, which are then immediately displayed when you navigate the map.

Sandbox

Literally "sandbox," as it is used to conduct tests. This is a runtime environment with memory and resources. Programs, mainly function libraries and objects, do not have access to computer files outside the allocated space. An example is a Java virtual machine that makes web page applets work. But this is extended to other environments such as XAML, XUL, etc.
In contrast, ActiveX does not work in a sandbox and requires complex security measures.

Offline mode

RIA continues to operate after the internet connection is closed, such as during a trip. Several techniques are implemented for this.
- Databases are migrated to the local IndexedDB database.
- Resources such as web pages and images are sorted and stored on your local hard drive.
- the third function is to transfer the operation of the Internet to a local position. Thus, Ajax must work locally, which is not allowed by the XMLHttpRequest object in normal mode.

Dynamic pages

RIA relies on dynamic web page components, so Ajax includes JavaScript, DOM, CSS, XMLHttpRequest object. To work with all RIA browsers, you must use web standards.

Web services

The application can use web services, on the application site, or from third-party sites that process or provide specific information.

Frameworks

A client-side framework can be added to this web environment: a Java virtual machine, .NET, etc., or HTML 5 can be used.

The HTML 5 standard is for web applications. It has a Canvas tag, allowing you to draw more complete graphic components and form elements.
It now has standalone features that all browsers support.

The JavaFX framework uses JSON format syntax to define interfaces and requires Java runtime.

Conclusion

The future of web applications will not necessarily be limited to one environment... Not in the capabilities of the proposed technologies, you will have to make a choice to create RIAs, because they are usually equivalent, but rather in a culture that would like to stand on the trail of Microsoft or somewhere else...

See also