Personal tools

OpenLaszlo and AJAX

From OpenLaszlo

‘AJAX’ stands for asynchronous JavaScript and XML—a development technique that describes rich, web-based applications developed on OpenLaszlo as well as those that run on DHTML. DHTML, which stands for dynamic hypertext markup language, is built into current versions of popular browsers. While some regard AJAX as synonymous with DHTML, OpenLaszlo offers a JavaScript and XML application development platform that is architected to support rich and robust, network-based applications that can be rendered currently using Flash soon using DHTML.

DHTML is not an application framework or platform; it was designed to add limited interactivity to page-based Web sites. DHTML was conceived years ago to support animating, hiding, showing, stacking, and formatting HTML content on the screen using JavaScript. But even today, slight variations in DHTML implementation among popular Web browsers (e.g., Microsoft’s Internet Explorer, Mozilla’s Firefox and Apple’s Safari) require Web application developers to create browser-specific versions and/or to invest time and money to work around these variations.

OpenLaszlo is an open source application framework, designed for the development of rich and robust applications delivered consistently across all popular browsers. As DHTML becomes more standardized, the OpenLaszlo application development platform can be extended to support this rendering option, in addition to today’s Flash rendering. Other extensions of OpenLaszlo may include support for embedded device runtime environments, such as J2ME, .NET and various platforms for mobile devices and TV set-top boxes.

OpenLaszlo’s Beauty is More than Skin Deep

Flash, like DHMTL, is a rendering technology. OpenLaszlo allows application developers to efficiently and effectively create rich, interactive and dynamic applications independent of the rendering technology used.

OpenLaszlo uses asynchronous JavaScript and XML, consistent with ‘AJAX’ development techniques, but goes far beyond simply using these core technologies in an ad-hoc, application-specific manner. OpenLaszlo is a sophisticated application framework that provides structure and syntax to build applications in a consistent and cost-effective way. OpenLaszlo applications are not inherently constrained by page-based paradigm of today’s browser—though they can conform to that constraint at discretion of developers. This means that OpenLaszlo developers can focus on delivering applications to computers now and extend their knowledge, experience—and applications—to other devices in the future, even TV set-top boxes.

OpenLaszlo uses a ‘declarative’ markup language structured in a way that is familiar to developers experienced with HTML and XML. Developers describe precisely the layout and logic of user interfaces in a hierarchical structure that makes it easier for others in the development workflow (e.g., quality assurance engineers) to understand and modify. Specialized tags allow developers to refer to complex functions in one or a few lines of code rather than having to build these functions from scratch with dozens of lines of code, which is commonly the case with DHTML-based applications today in the absence of OpenLaszlo’s programming framework.

JavaScript is used within OpenLaszlo to support interaction among elements of a user interface screen and between the user interface and network-based data sources and applications servers. OpenLaszlo includes prepackaged ‘components’ for common user interface elements and functions, such as buttons, sliders , trees, data grids, and windows. It also includes powerful yet flexible ways to describe the relationship among user interface elements, such as parent-child dependencies and relative size/location along with animated interaction (e.g., drag-and-drop functions). And JavaScript is used by OpenLaszlo to make calls to servers for new user interface elements and data to populate them.

OpenLaszlo has a powerful built-in data model, using standard XML interfaces for data exchanges with applications with outside data sources and applications. This allows OpenLaszlo applications to fit in to larger service-oriented architectures and flexibly call on Web services to provide dynamic and real-time updates to applications. With its XML-centric architecture, OpenLaszlo goes farther than simple AJAX development in supporting data-driven networked applications.

The OpenLaszlo platform includes compilers that translate developers’ code logic into programs that can be understood and displayed by client-installed runtime engines or renderers. As discussed above, today OpenLaszlo applications are compiled into SWF files that play in Flash, but other compilers can be added to support DHTML and specialized client runtimes embedded in consumer devices. While application developers may choose to vary user interfaces and across different devices, OpenLaszlo provides a common application logic and framework for accessing Web services and other network based data and functions.

Open Source Means Complete Control and Continuous Improvements

The framework and components of OpenLaszlo make developing rich and robust network-based application faster and more efficient. But the open source nature of OpenLaszlo allows developers to understand completely and alter prefabricated components. In fact, developers can build and contribute their own components and programming logic to the OpenLaszlo community. OpenLaszlo is freely downloaded over the Internet (and has nearly 100,000 times in its first year of availability). Self-guided training and documentation allow programmers to hit the ground running and in-depth training, along with professional services are available from Laszlo Systems, Inc.

In short, OpenLaszlo offers the advantages of AJAX—integrate web-standard technologies like JavaScript and XML—with an open source framework that allows application developers cost effectively build compelling network-based applications that run not only on PC but other devices in the emerging digital life.

More Information

For more information on the details of the OpenLaszlo AJAX project, see the Legals_Project_Plan. This project name was chosen as a reference to the Legal Sea Foods Restaurant in Cambridge, MA, where many breakthrough ideas were conceived over bowls of New England's best chowder. Locals call it "Legals".