BT

Dojo 0.9 Goes Final with Significant Performance Improvements

by Scott Delap and James Estes on Aug 20, 2007 |
Dojo 0.9 final version was released today after close to 7 weeks in beta release. Some of the highlights:
Dijit
  • unified look and feel for all widgets
  • ambitious a11y and i18n features in every Dijit widget
  • a mature CSS-driven theme system with multiple, high-quality themes
  • huge improvements in system performance
  • data-bound widgets
  • Declarations for lightweight widget writing
  • a new page parser that allows instances of any class, not just widgets

Core

  • reduced API surface area (easier to remember and use)
  • dojo.query() always available, returns real arrays
  • from-scratch high-performance DnD system
  • Base (dojo.js) is 25K on the wire (gzipped)
  • dojo.data APIs finalized
  • new build system
  • new test harness for both CLI and browser use
  • dojo.behavior now marked stable and based on dojo.query
  • excellent animation APIs with Color animations in Base (always available)
  • all the features you've come to count on from Dojo (RPC, JSON-P, JSON, i18n, formatting utilities, etc.)

DojoX

  • high quality implementations of previously experimental features: gfx (portable 2D drawing), data wires, offline, storage, cometd, etc.
  • dojox.gfx now includes Sliverlight support
  • many more features and improvements than there's room for here.

The performance improvements sound significant:

Dijit apps about 1/2 the size compared to 0.4 Page load time much faster: no javascript sizing in widget code

Blogger Daniel Ruspini wrote up his impressions of 0.9 from the Ajax Experience conference earlier this month:

...although I'd heard a lot about what was happening with 0.9 this was the first time I'd seen some of the changes and real size/performance numbers. The idea behind 0.9 was to scale down the code which had grown bloated over time due to the nature of the core principles: support as many browsers as possible, allow contributers to add widgets to the widget library, support backwards-compatibility code. What they found was that 30% of the code was expendable. Also the widgets had been written in a variety styles and were not all consistent in use; while others were not used by most developers. In some cases very popular widgets were trying to do too much by covering every possible use case which made them slow (ex. Button)...

Dojo 0.9 is backwards-incompatible with all previous Dojo releases. A porting guide is available for users looking to move from 0.4 to 0.9.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT