Friday, March 11

Webdevelopment made simple and easy?!

The greatest challenge that today's Web-designing/development facing is the cross browser compatibility. i.e. the Cascading style sheets(CSS), javascript which are used extensively in web development may not work as expected in all the different browsers. To overcome this problem, one has to develop different CSS, javascript specific to each browser, which is a very tedious job. With the dawn of web2.0, Ajax, there is a demand to develop websites which are simple, more user-friendly, and which give rich user experience. In this case, the cross browser compatibility becomes a major setback in modern web designing.

To address this problem, there two very good technologies available in the industry. Google's GWT framework, and Adobe's Flex. GWT uses the Java language, and flex uses actionScript which is almost similar to java. Especially for java developers, adapting to these two technologies becomes a cakewalk!

Google Web Toolkit(GWT)

Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications. Its goal is to enable productive development of high-performance web applications without the developer having to be an expert in browser quirks, XMLHttpRequest, and JavaScript. It uses the java language for developing the code. Once the Java code is finished, the GWT compiler translates the Java code into HTML and Javascript. The compiler creates browser specific HTML and JavaScript to support all the major browsers correctly. GWT supports a standard set of UI widgets, has build in support for the browser back button and a JUnit based test framework.

It saves the user from learning javascript, css and allows the java developers to easily build rich user interfaces using java.

Flex

Flex is a developer toolkit for building Rich Internet Applications. Its almost similar in principle to java applets which needs JRE plugin(Java virtual machine which executes the bytecode(.class)) to be installed in browser to run them. A Flex application runs in the Flash Player which is typically installed as a browser plug-in. A major piece of Flash Player is the ActionScript Virtual Machine that executes the Flash bytecodes(.swf) to which a Flex application is compiled.

The Flex programming model includes:

  • ActionScript - an ECMAScript-compliant, object-oriented programming language. With some syntactical differences, ActionScript looks and feels similar to Java, and supports the same object-oriented constructs: packages, classes, inheritance, interfaces, strong (but also dynamic) typing, and so on.
  • MXML - MXML is an XML markup language that you use to lay out user interface components. Like HTML, MXML provides tags that define user interfaces. MXML will seem very familiar if you have worked with HTML. However, MXML is more structured than HTML, and it provides a much richer tag set. MXML includes tags for visual components such as data grids, trees, tab navigators, accordions, and menus, as well as nonvisual components that provide web service connections, data binding, and animation effects. You can also extend MXML with custom components that you reference as MXML tags.

Flex enables the developers to develop simple, rich and interactive user interfaces very easily without much development effort.