An Intro To Dojo
Ask Questions
You Will Forget Most
But Remember One Thing
Responsive Web Applications
Being Responsive
Swiss knife
Building Interactions
Experiences Are...
...So We Have To
Technology Only
Ajax
So Why Are We Having...
How JavaScript Helps
But It's A Trade off
So How Do We Judge
Interaction Design Principles
Evolution Of Web Content
Mirrors The Evolution
Current App Classes
Current App Classes
The Page Weight Trade offs
Clearly, We Need Different Tools
...Or Do We?
Layers Of Dojo
Dojo Provides A System
Requiring Packages
Defining Your Own Modules
Builds
Walk through
Language Utilities
Normalize JavaScript
dojo.lang.*
The Handiest Ones
Event System
Like crack for web developers
Eavesdropping
Sources And Targets
We fix the event object!
UI Utilities
Lots of Goodies!
The Core Building Blocks
Obligatory Ajax Slide
Common Cases
Other I/O Goodies - 1
Other I/O Goodies - 2
Drag and Drop
Every drag operation
Animations and Effects
dojo.lfx.*
Powerful Primitives
Contd.
The Widget System
What's A Widget?
Dojo Already Has Lots
Using Widgets
Passing Parameters
Custom Widgets
Anatomy Of A Widget
Foo.js
Foo.html
Using it!
Taking Dojo Back To...
Organizational Excuses
Architectural Excuses
Dojo makes professional web application development better, easier, and faster. This talk covers Dojo's core APIs, including those for Ajax, Drag and Drop, Animations, and AOP-style event handling. We'll also discuss some of the stock widgets, various ways to take advantage of them, and how you can use Dojo's package system to help make your own code faster and more portable..
Alex Russel is Director of R&D at SitePen, a consultancy specializing in Dojo application development. Alex is also Project Lead for The Dojo Toolkit and serves as current President of the Dojo Foundation.
Prior SitePen's sponsorship of his full-time Dojo work, Alex helped improve the responsiveness and user experience of JotSpot, the application platform cleverly disguised as a wiki. Alex also has done stints improving the experiences for diverse and data-intensive web applications in business intelligence, security system reporting, and medical data entry and reporting.