|
|  |
 |  |
| | |
 |
 |
| |
|
The Zen of Dojo
|
|
|
Duration:
3 Days
|
|
|
|
This course is designed for experienced Web application developers and
professionals:
-
Architects
-
Designers
-
Consultants
-
Developers
-
Web 2.0 Developers
| |
|
|
|
|
Description
|
|
Dojo has recently caught the attention as a popular AJAX toolkit. But it is
much more than that. Quite simply put, it is an Open Source JavaScript UI
toolkit. It makes writing JavaScript easier, building dynamic UIs very
simple and interacting with server-side components a breeze. The foundation
of Dojo is "Dojo Base", a single tiny library which contains Ajax, event
handling, effects, quick CSS queries, language utilities, and a lot more.
On top of this Base, the rest of Dojo Core adds high-quality
facilities for Drag and Drop, extended forms of Ajax and I/O, JSON-RPC,
internationalization, back-button handling etc. Layered on Dojo Core
is the widget system, Dijit, for building UI components easily. If you can
write HTML and CSS, Dijit allows you to quickly build reusable client-side
components (by using extended attributes on HTML). By upgrading standard
HTML instead of inventing a new markup language, Dijit makes building
powerful Web 2.0 UIs very easy to learn.
This three day course does an in-depth look at the various parts of
Dojo both from a client side as well as server side perspective. This
will give you the tools to become facile with Dojo and to even extend it
suit your requirements.
|
|
|
Objectives
|
This course is targeted to give detailed guidance to building Web 2.0
applications using Dojo. On completion, attendees would be able to:
-
Understand the various components of the Dojo toolkit
-
Pick the tools and frameworks that can be used along with Dojo
-
Understand the various core JavaScript enhancements included in Dojo
-
See the various components added by the Dojo Core system libraries
-
Build powerful UI components by using Dijit
-
Use server-side components in Dojo to interact with AJAX frameworks
-
Understand how to deal with data on the server and client side
-
Extend Dojo by writing custom widgets, library components
|
|
|
Course Outline
|
|
Introduction to Dojo
-
What is Dojo?
-
Why Dojo? Why not
Rico,
Scriptaculous,...
-
Installation, Development Tools, etc.
Dojo Base
-
Getting Started with Dojo
-
Namespace Concepts, Package System, Custom Builds
-
Declarative and Programmatic Models
-
Event System:
Connecting multiple events
Augmenting JavaScript events
Event attributes and handlers
Page loading
Pub/Sub messaging, Topics
Object Oriented Dojo
-
Javascript Objects, Prototype
-
OO Dojo: report(), statics, ...
-
Functions as Objects
-
Classes, Constructors
-
Inheritance, Mixins
Dojo Core
-
Working with Widgets
-
Interacting with Widgets
-
Drag and drop:
The DnD API
DnD Actions
Styling DnD items
Dijit
-
What is Dijit
-
Markup, Validation, Assist, Feedback
-
Layout, Command Control: menus, toolbars
-
Date and Times
-
Advanced Editing, Rich Text, Themes
-
Filtering Select, Lists and Trees
-
I18N, Accessibility
| |
Ajax and Dojo
-
A simple AJAX example
-
Using JSON
-
Form Data, RPC
-
Back Button, Undo, Bookmarks
-
Advanced AJAX features
Writing Custom Widgets
-
Compound Widgets
-
Objects and Templates
-
The Memo Widget
-
Widget by Refactoring
Dojo Data
-
dojo.data: Design and APIs
-
Using and Creating Datastores
-
Data-Enabled Dijit
-
dojo.storage client side storage
Dojo Grid
-
The Flexible Grid
-
MVC and Grid
-
Datastores and Models
-
Filtering by Queries
-
Cell editing
-
Obsverer/Observable
Advanced Dojo
-
dojo.query: nodes by Tag, ID or Class
-
XPath-like Queries
-
Drawing with GFX
-
Integration with Web Services
-
Threads - dojo.Deferrable
-
Porting - 0.4 to 1.0
|
|
|
|