Welcome!

Rob Gonda

Subscribe to Rob Gonda: eMailAlertsEmail Alerts
Get Rob Gonda via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: RIA Developer's Journal, AJAX World RIA Conference

RIA & Ajax: Article

Real-World AJAX Book Preview: The AJAX Software Platform Requires Real Design

Real-World AJAX Book Preview: The AJAX Software Platform Requires Real Design

This content is reprinted from Real-World AJAX: Secrets of the Masters published by SYS-CON Books. To order the entire book now along with companion DVDs for the special pre-order price, click here for more information. Aimed at everyone from enterprise developers to self-taught scripters, Real-World AJAX: Secrets of the Masters is the perfect book for anyone who wants to start developing AJAX applications.

The AJAX Software Platform Requires Real Design
AJAX Development and Maintenance Challenges
AJAX has raised the awareness of the potential of Web applications. It has also deepened and broadened the use of JavaScript and DHTML in application development. There are significant benefits to AJAX, but there are also significant challenges.

The biggest challenge is its scripting approach. AJAX makes developers write a lot of JavaScript code, which is hard to develop, debug, test, and maintain. JavaScript/DHTML is not standardized and there are incompatibilities between browsers, browser versions, and operating systems. And there is a severe lack of tools for developing, debugging, and testing JavaScript/DHTML code. There is also a slim marketplace for robust components. By definition, a scripting language emphasizes "quick and dirty" at the cost of code maintainability. By contrast, a real programming language like Java and C++ emphasizes formality and strictness. For example, unlike Java or C++, JavaScript is not strongly typed. Programming errors can only be uncovered at runtime. JavaScript object properties and methods can be easily (and arbitrarily) modified regardless of a predefined interface - none of which is allowed in Java or C++.

Second, AJAX does not provide a rich user interface or incremental update capability. Developers have to code such functionality using JavaScript and DHTML. There are various JavaScript libraries available that alleviate this issue to a degree, but they still require developers to write JavaScript, which does not really solve the fundamental challenge.

Third, the AJAX development model tends to break the separation of behavior and presentation. Separation of behavior and presentation is a well-established design pattern that partitions the user interface from the application logic. User interfaces are described as markup documents and application logic is written separately in a procedure language to control the behavior. To create a rich user interface, AJAX developers tend to embed significant amounts of JavaScript inside their Web pages. Mixing JavaScript with presentation breaks the clear separation and makes the application even more difficult to develop and maintain.

In a typical application lifecycle, the most expensive part is not the initial development, but the ongoing maintenance. How to overcome these challenges and enable a "manageable and maintainable AJAX" should be a topic of high priority and importance to any significant AJAX development project.

This content is reprinted from Real-World AJAX: Secrets of the Masters published by SYS-CON Books. To order the entire book now along with companion DVDs, click here to order.

More Stories By Coach Wei

Coach Wei is the Founder and Chairman of Nexaweb (www.nexaweb.com), developers of the leading software platform for building and deploying Web 2.0 and AJAX applications. Previously, he played a key role at EMC Corporation in the development of a new generation of storage network management software. Wei has his master's degree from MIT, holds several patents, is the author of several technology publications including JDJ, Web 2.0 Journal, and AJAXWorld Magazine, and is an industry advocate for the proliferation of open standards.

More Stories By Rob Gonda

Rob Gonda is an industry visionary and thought leader, speaks on emerging technologies conferences nationwide, and combines unique approaches to technology and marketing strategies. He is the former Editor-in-Chief of the AJAX Developer’s Journal, an Advanced Certified Coldfusion Developer, member of the Adobe Community Experts, frequent contributor to the CFDJ and ADJ, co-author of Real-World AJAX: Secrets of the Masters, author of AjaxCFC, holds a BS in computer science and engineering and an MBA with a specialization in entrepreneurship. Rob recently joined Sapient from ichameleon/group/ where he was a founding partner and chief technical officer. He is part of the global technology leadership team, and brings with him over ten years of experience in web development and 360 marketing campaigns for clients such as Adobe, Coca-Cola, Guinness, Toyota, Taco Bell, NBC, and others. He specializes in emerging technologies, marketing strategy, social media, and he is currently fascinated with rich internet applications, service oriented architecture, mobile, agile methodology, automation, behavioral targeting, multi-channel synergy, and identifying new trends. Rob’s mission is to develop forward-thinking expertise that will ensure clients are always on par with rapidly changing technologies and maintain its ethos of evolving. You can reach him at rob[at]robgonda[dot]com and read his blog is at http://www.robgonda.com

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.