In recent years, many social networking sites and content management systems have cropped up to help people keep in touch with each other. Innumerable applications have been given a Web il}terface, since users of the applications are comfortable accessing them through a Web browser. With Web 2.0, the areas of interaction design and usability have gone through many developments.
The developrrmnt of a Web 2.0-enabled application has two aspects-delivering function-rich user interfaces and rninimising the efforts spent implementing these common features in applications and web sites. The main component of any Web 2.0 application is ]avaScript. Till a few years back, ]avaScript was considered to be ideal for preliminary functions like client side input validation and form submission. Nowadays, most Web applications get most of their logic-related functions done using]avaScript. Features like validation and auto-suggestion are no longer add-ons¬they have become very much part of the basic requirements. There is a paradigm shift, both in user interface technologies and the way]avaScript is used.
Anyone who has worked on Web application development would have faced enormous issues due to the diversity in standards across the ]avaScript engines used in different browsers. We will discuss some of the most challenging aspects:
1.Browser quirks
2.Maintenance of code
3.Tougher implementation of richer client applications
Browser quirks
As we know, not all browsers follow W3C standards. As usual, Microsoft Internet Explorer (IE) likes to live in its own isolated world, and what's worse is that different versions ofIE behave differently. I'm sure you must have developed a killer function using]avaScript, only to find that it completely failed to work in one of the browsers. Things like selection of a value from a select box, event handling, implementing asynchronous calls, etc, are different across browsers. Likewise, having browser- specific code in applications is not really a good idea.
Maintenance of code
Software maintenance is complex and challenging, as it is the longest phase in the software development life cycle. Having discussed differences in ]avaScript engines, writing a maintainable code in ]avaScript has become even more challenging than an object-oriented language. Easier maintenance of code will help in saving lots of time. Let's discuss a common mistake that we often commit the structure of the page is mixed with its behaviour.
The presentation (HTML) gets mingled with the behaviour (what gets called when
the user clicks the element). We need to separate the presentation from its behavior for better maintainability.
Tougher implementation of rich user interfaces Though it is possible to create a rich user interface using plain ]avaScript, the approach is tougher for beginners and unproductive for development teams. The latter should first work on getting the infrastructure ready and then build their application functionality on top of the infrastructure. But ]avaScript libraries help us to write much cleaner code, focusing on solving our problem by giving us the necessary infrastructure. For example, in most ]avaScript libraries, features like animation, accessing DaM and special effects have become quite common.
JavaScript libraries
The world is full of problems, and so is software development. Have you ever wondered how so many Web 2.0 applications like WordPress, Orkut and Facebook
were developed? Software development is indebted to the Open Source community for providing world-class libraries, and]avaScript is no exception.
Over the past years, many companies and even individuals have released sophisticated ]avaScript libraries. These, by and large, help us to overcome many challenges. Some of the noteworthy ]avaScript libraries are GWT, EXT]S, Yahoo, Prototype, DOJO, Open Rico, Mootools and JQuery. Like IDEs such as Eclipse and NetBeans, these libraries have tremendously improved the productivity of developers.




Reply With Quote
Copyright Techfuels
Bookmarks