Parse the differences between RIA and AJAX (1)

Source: Internet
Author: User
Tags high cpu usage

Experience instance:

Goowy email of RIA ApplicationHttp://www1.goowy.com

Google Mail for AJAX applicationsHttp://mail.google.com

Common Characteristics of AJAX and RIA:

They are all web applications.
All have a user-friendly design concept

AJAX is different from RIA:

AJAX is simple, elegant, user-friendly, and fast to access. Disadvantages: the code is messy, the compilation is complicated, and does not comply with the standards. It is unfriendly to search engines. Low program efficiency.

RIA is more scalable, more user-friendly, and more visual and interactive, but its disadvantage is slow access speed, large file downloads, and high CPU usage for RIA applications, which is less efficient, many problems still need to be solved.

Rich Internet Application System (RIA)

In the past two years, people have been interested in building a "rich client": This is a user interface, it is more robust, responsive, and visually interesting than HTML interfaces. RIARich Internet Application, rich Internet Application System) technology allows us to deploy rich client programs on the Internet in a simple way like using Web. Whether or not RIA can completely replace the HTML Application System as people have guessed in the future, for those institutions that use the fat client technology to run complex application systems, RIA does provide a cheap option.

Why RIA?

The reason why HTML-based applications become popular is that the deployment cost of application systems is low, the structure is simple, and HTML is easy to learn and use. Many users and developers are willing to give up the user interface improvement brought about by the desktop computer to achieve quick access to new data and application systems. Compared with the loss of some important UI functions, the Web-based approach brings more benefits.

However, some application systems are not fully suited to HTML technology. Complex application systems may require multiple web pages to complete a transaction. In some fields, such as medicine and finance, this often leads to low interaction speeds. Let me consider a project management system: we can implement it as an HTML application system, but if you can see and operate charts, schedules, and various hierarchies, it will obviously work better.

In addition, although HTML is simple, even simple interaction activities still require a lot of scripts. Even after careful arrangement and comprehensive script design, an input form can only send simple "name/value" pairs from a browser. If an HTML form can send and receive more complex data structures in XML format, it will be much better.

RIA uses a relatively robust client description engine, which provides content-intensive, fast response speed, and rich graphic user interfaces. In addition to providing a sliding label, date selector, window, tab, fine-tuning controller, and ruler interface for various controls), RIA generally allows SVGScalable Vector Graphics and scalable Vector graphs) or other technologies to build images at any time. Some RIA technologies can even provide full-activity animations to respond to data changes.

Another advantage of RIA is that the data can be cached on the client, which enables a user interface that is faster than HTML-based response and has less data to and from the server. For wireless devices and devices that need to be connected occasionally, the trend in the future is certainly to the direction of rich clients, and will gradually stay away from text-based Web clients. Application Systems running on laptops can be designed to work offline, or at least work offline when the connection is lost.

Figure 1 shows a typical RIA architecture. XML is usually used as the format for data transmission and is sometimes used to describe the layout of a form. In many instances, the client can maintain a connection with the data source, so that the server can update the client data in real time. You can call a Web service to access an Oracle data.


Figure 1

Technology for rich client RIA

Java: some very complex client applications, such as Oracle JDeveloper and Eclipse, are written in Java. This shows that Java can be used to build almost any imaginary rich client application. So far, Java has been around for a few years and supports creating a form-based user interface. In addition to the user interface components in the Java basic class JFC/Swing), developers can also use the SWT toolbox from the Eclipse Project and many third-party toolboxes for development. For graphics, you can use Java 2D API-a very complete and complex graphic API. Java also supports unmatched XML and Web services. You can use a Web browser to use Java Plug-in software, or use a newer Java Web Start Technology in the Java Runtime Environment to deploy applications. The main drawback of using Java to build rich client programs is its complexity. Even for simple forms and graphics, it requires very cumbersome code ). It has the advantages of Java's full support for Web standards and Profound Connotation of the language and class library.

XUL: XUL "zool") is an XML-based user interface language, which is derived from Mozilla's open source code project. It can be used to create a form application. These applications can run not only on the Mozilla browser, but also on other description engines, such as Zulu, a Flash MX component) and Thinleys ). The XUL description engine is smaller than KB). It can use XML data or generate XML data. Like Java, XUL also has a very large user group with a large number of open source tools. For example, Theodore ThinletEditor can be found at "next step ") -- a Java application that allows you to layout user interfaces in a graphical manner and generate corresponding XUL. A major drawback of XUL is that it has not yet been supported by a major commercial entity. The biggest advantage of XUL is that its integration with the Gecko engine opens the door to a large number of Web standards ), compared with most other XML user interface description languages, it is a very expressive and concise language.

Macromedia Flash and Flex: Flash is a mature commercial product that can introduce interactive graphic interfaces to Web pages. After the upgrade, the new version includes the function of creating a form-style application. Although Flash, as the most widely deployed front-end technology on the Web, is still controversial depending on the selected Flash Player version), it is said that more than 98% of desktop systems support Falsh. The Flash tool used to create animated images has powerful functions and is visually opposite to other technical requirements for low-level image coding. Therefore, graphic designers are very handy. The script language used by Flah is a variant of ActionScript -- ECMAScript 1.5, which is also called JavaScript. The Flex product adds an XML Description Language for Flash so that the user interface can be compiled and described at any time using Flash Player. Flex enables traditional development institutions to better understand and use Flash. The biggest disadvantage of Flex and Flash is that they have limited support for standards such as XML and Web services, and the environment as an application development tool is not yet mature. The advantage of Flex and Flash is that it can be easily used to create complex animated displays and third-party attachments.

Oracle Forms: Oracle Forms is a mature commercial product used to build a database-centric Internet application system. With Oracle Forms, you can use a visual designer of the output form module File to create a form. To facilitate further processing outside the design tool, module files are either in private FMT Format or XML format. These module files drive a Java Runtime Environment that describes the form. In addition to the standard widgets of all forms, you can also integrate additional pluggable Java components and custom an to implement more functionality. Oracle Forms uses the PL/SQL scripting language, and Oracle databases use the same scripting language. An interesting feature of Oracle Forms is that it is used to create, edit, and compile Java APIs for form module files. developers can create scripts to generate many Forms applications, or make global changes. The main disadvantage of Oracle Forms is that Web deployment requires the use permission of the Oracle Application Server. It has the advantage that it can be closely integrated with Oracle databases and other parts of the Oracle platform, such as Single Sign-On Single logon) and Enterprise Manager (Enterprise Manager), and is widely supported internationally, and extremely efficient creation of data-centric applications.

Start to select and use RIA Technology

Here we only discuss some representative examples of technologies that can be used to create RIA, and there are many other technologies. When selecting an RIA technology, you need to weigh the following factors:

  • Comparison between open source products and commercial products;
  • Mature features are compared with the latest features;
  • The range of lightweight features is compared with the richness of the UI;
  • Comparison between media-centric applications and data-centric applications;


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.