Part II. Dijit and Util

The first part of this book covered Base and Core, a JavaScript library that can facilitate virtually any web development effort. Part II shifts gears to cover the visual elements of the toolkit, Dijit —delivering the much-acclaimed widgets—and Util, which provides build tools and a standalone unit-testing framework.

Dijit is a fantastic layer of widgets that provides a complete collection of out-of-the-box form elements, layout containers, and other common controls for achieving a rich user experience on the web. Dijit builds directly on the foundation provided by Base and Core, and is a prime example of the kind of achievement that is possible from using a powerful standard library that insulates you from browser inconsistencies and reduces the boilerplate that you normally write, debug, test, and maintain along the way. In that regard, Dijit is very much the natural outworking of Base and Core.

While Part I of the book presented the fundamental building blocks of the toolkit in a way that empowered you to be a better JavaScript developer, this part of the book focuses on exposing you to all the various dijits (Dojo widgets) that you can simply pull off the shelf, snap into your page, and have it all "just work," with little or no coding required. Designers should especially enjoy this part of the book because it provides a comprehensive survey of the advantages Dijit makes available and how they can be put to work in HTML markup.

Of course, there is tremendous power in having the ability to write your own custom dijits—whether totally from scratch or as a composition of existing stock dijits—so there will be plenty of coverage on that front as well. Digging deep into the anatomy and lifecycle of widgets, mapping out the parallels between declaring widgets in markup versus programmatic creation, and discussing accessibility (a11y, which is an abbreviation for "accessibility" in that the word starts with "a," ends with "y," and has 11 letters in between) are all on the agenda.

After providing complete coverage for Dijit, Part II ends with a discussion of Util, a fantastic collection of build tools including ShrinkSafe, a JavaScript compression system based on the battle-tested Rhino JavaScript engine, and the Dojo Objective Harness (DOH), a standalone unit-testing framework that facilitates testing and quality assurance efforts surrounding your application.