HTML 5 for Web Applications
How is HTML 5 designed for Web applications and how can it compete with Silverlight?
To answer this question, we have to consider what constitutes an RIA (Rich Internet Application), an online software equivalent of a local software, such as your word processor.
Current technologies, Ajax frameworks, can help to build online applications such as Wordpress for example. But the backend could offer more opportunities, about:
- The user interface.
- Graphics and multimedia.
- APIs for processing.
- Communication with the server for storing and retrieving data
And so could allow applications to offer in turn more functions.
To provide an alternative to Silverlight, HTML must have multimedia possibilities, an interface language, the offline mode. Functions now provided by extensions must be included in a standard format.
What Silverlight offers to build applications ...
- The XAML interface language.
- Audio and video.
- Widgets, graphical components.
- The offline mode, since version 3.
- A graphical surface in 2D and 3D.
- Multiple dynamic programming languages.
All that allows to build software for office, utilities, games ans many examples are available on the silverlight site (I dare not venture to give a URL given the random nature of Microsoft's links).
The benefits delivered by the HTML 5 standard definition when it will be fully implemented by browsers ...
The user interface
As its name suggests, it uses the HTML language of interface, complete with widgets, objects of which several forms are added to what already contains HTML 4.
The specification 5 adds the combobox widget, a drop-down list to a text field, so that the user adds values to the list, the menu tag, toolbar, a case of menu, a progress bar, improved upload.
HTML 4 has beside the text field on one or more lines, a password field. Forms are now extended with several new specialized fields, with corresponding validity checks: date with control in the calendar, url, email, number, color to choose a color.
The backend is also enriched by new functions. Regular expressions can be associated with an input field to validate the content.
Interaction is standardized with cut/paste, drag and drop. The geolocation provides the necessary data to software to fit the user's language, or region where they sell products.
Data management and speed
By using local storage, the application save on the user desktop data reusable later, safety and without size limit.
Session storage retains data for the duration of one session. This will avoid to use PHP or other server side language.
Multimedia and graphics
Flash reader used to superimpose a video or sound track are replaced by simple tags and it will also be easier to configure their appearance with the attributes of those tags.
But the modern Web has to go further and allow to add vector graphics in 2D or 3D.
Canvas is an area in which one can both define a personalized user interface, or create animations or display statistical graphs. The 3D mode is added with WebGL integrated in future versions of browsers.
We can have an idea with examples of applications running on Canvas on browsers already compatible.
Availability of the application
The ability to run applications outside connection is there for a while through the Gears extension (used by Wordpress).
HTML 5 makes a standard that avoid to add an extension and promote the use of this function in each application.
HTML 5 should have the same effect as Ajax, which by the magic of a simple word, made from a set of technologies that already exist an essential component of the Web and promoted the development of dynamic websites and more responsive, more enjoyable.
The existence of a standard for Web applications, working with all browsers on all systems, should help make web applications very common and equipped with sophisticated features while making the Web a whole better experience ... A bit like the modern television compared to the small screen in black and white of the past.
- Making a drawing program with Canvas. Demo by Opera.
- XMLHttpRequest vs. WebSocket. Comparing the two technologies, Ajax and WS and the programming.