|
YOUR FEEDBACK
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
TOP THREE LINKS YOU MUST CLICK ON AJAXWorld News Desk Tooling Up for Web 2.0
New challenges for application developers
By: Shay Shmeltzer
Dec. 16, 2008 06:00 AM
Most of the discussion surrounding Web 2.0 applications revolves around the way it revolutionized end users' interaction with applications and with other users. An area that is sometimes left out of the discussion is the impact Web 2.0 had on the developers who are actually building these applications. Creating Web 2.0 applications involves a variety of technologies and standards from UI technologies such as AJAX and DHTML to back-end technologies such as SOA and other mash-up technologies (see Figure 1). This puts a new burden on developers and challenges them to become multidisciplinary developers - proficient in a range of new and emerging Since finding a developer who is averse in such a wide range of technologies isn't an easy thing to do, many organizations have specific developers handle specific layers. Let's examine these types of developers and the features that they are likely to look for in a development tool. The UI Developer But with new requirements from the user interface, those skills are not enough. For example, if you are developing your rich Internet application leveraging AJAX, you'll need to have advanced JavaScript knowledge along with an understanding of the new communication protocols between the browser and the server, coupled with encoding/decoding XML messages and DOM manipulation. The role and complexity of JavaScript coding in the AJAX world becomes even bigger. This calls for more advanced JavaScript tooling - an editor that just highlights the keywords of the JavaScript language is not enough anymore. You need to be looking for a tool that will offer you code insight, debugging, and refactoring. These capabilities, which have been spoiling Java developers for a while, are only now starting to appear in the world of JavaScript developers. In some cases the JavaScript-based AJAX might not be the only UI technology needed. Take embedded dynamic graphs as an example. Static images won't cut it anymore - users are expecting to get animation, hover over highlighting, zooming and more. The dynamic nature offered by more advanced rendering technologies such as flash might be more appropriate in such cases. In a case like that, suddenly the developer is stepping into a complete new technology and development language that they need to learn. It's even trickier when the developer needs to integrate two different UI technologies and communicate messages between them. This type of complexity, along with the complexities involved in writing asynchronous messaging to the server, and the problems of cross-browser portability, resulted in the emergence of a multitude of frameworks. These frameworks offer pre-packaged components that can be used to construct rich user interfaces. JSF components in the Java EE world, User Controls in ASP .NET, and a proliferation of JavaScript component libraries such as Dojo and Ext all aim to save the developer from the hard work of building AJAX-enabled components. These components encapsulate the AJAX behavior and abstract the developer from the complexity of developing the underlying code. The developer just needs to arrange the components on the page and work out the interaction between them. The challenge for the IDE is to provide an environment that will allow the user to visually work with these components to construct the complete user interface and to define their behavior. Developers are looking for a development environment with a WYSIWYG layout editor, a set of components you can drag to your page, and property inspectors and dialogs that help set behaviors and actions for these components. LATEST AJAXWORLD RIA STORIES
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
|
SYS-CON FEATURED WHITEPAPERS MOST READ THIS WEEK |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||