Web 2.0 Technologies

Web 2.0 Technologies

Web 2.0 has a complex and growing technology that includes server-software, content-syndication, messaging- protocols, standards-based browsers with plugins and extensions, and various client-applications. All these differ in functions and approaches but provide all the requirements beyond the expectation such as information- storage, creation, and dissemination capabilities.

The client-side/web browser technologies used in Web 2.0 development are Asynchronous JavaScript and XML (Ajax), Adobe Flash and the Adobe Flex framework, and JavaScript/Ajax frameworks such as Yahoo! UI Library, Dojo Toolkit, MooTools, and jQuery. Ajax programming uses JavaScript to upload and download new data from the web server without undergoing a full page reload.
To allow users to continue to interact with the page, communications such as data requests going to the server are separated from data coming back to the page (asynchronously). Otherwise, the user would have to routinely wait for the data to come back before they can do anything else on that page, just as a user has to wait for a page to complete the reload. This also increases overall performance of the site, as the sending of requests can complete quicker independent of blocking and queueing required to send data back to the client.

AJAX

  • Stands for Asynchronous JavaScript + XML
  • —Ajax is not a technology but a combination of:
    • —Standards-based presentation using XHTML and CSS
    • —Dynamic update and display content using DOM (Document Object Model)
    • —Data communication using JavaScript’s XMLHttpRequest
    • —Event-driven without direct action required by user
    • —Use other XHTML/Dynamic HTML features
  • —Asynchronous calls
    • —Make requests to the server without a page refresh.
    • —Parse and work with XML documents
  • —Extensively used by Google
    • —E.g. Google Suggest
  • —Web page can communicate with web server online as user enters data into an HTML form.

JSON: JavaScript Object Notation

  • Called as a “fat-free-alternative” to XML and a serialized JavaScript Object.
  • —It is an ultra-simple lightweight data interchange format
  • —Based on subset of JavaScript syntax, array and object literals
  • —Supported as an alternative output format by many Web 2.0 Services —Yahoo APIs, Google Maps, Del.icio.us, etc.
  • —Built-in support in Browsers.

GWT (Google Web Toolkit)

  • Open source Java software development framework
    • Develop Web applications as if they were Swing-like GUIs
  • Easier AJAX application development
    • You write your front end in Java using any Java IDE available (e.g. Eclipse, JProfiler, JUnit, IntelliJ…)
    • GWT complier will automatically convert it into browser-complaint JavaScript and HTML.
    • Confirm that the Web App. Runs successfully in each browser
  • GWT Architecture
    • GWT Java-to-JavaScript Compiler: Java-to-JavaScript compiler
    • GWT Hosted Web Browser: run and execute your GWT applications
    • JRE emulation library: contains JavaScript implementations of the most widely used classes in the Java standard class library.
    • GWT Web UI class library: set of custom interfaces and classes that let your create web browser “widgets” with use of CSS.

YUI (Yahoo! User Interface Library)

  • Collection of JavaScript and CSS resources
  • Makes RIA (Rich Internet Applications) easier to build
  • Open source
  • Yahoo! User Interface Library components fall into three groups: Utilities UI Controls, and CSS resources
  • “Better documented than GWT” (Sidd’s personal opinion)
  • Can be used with Yahoo! Design Patterns Library to easily implement design patterns.
DOWNLOAD SOLUTION HERE