При написании небольшого приложения столкнулся с избыточным количеством подгружаемых скриптов, в основном dijit виджетов, что порядком сильно тормозит загрузку страницы.
Если Вы заходили на страницу загрузки, должны были заметить Dojo ShrinkSafe – утилиту для сжимания JavaScript кода – отличная штука, так же Dojo позволяет делать свои сборки фреймворка – указываете, что вам надо и Dojo Build собирает все с учетом зависимостей в один файл.
Почитать про Dojo Build можно в The Book of Dojo
Начнем по порядку, первое и самое важное, вам нужна полная версия фреймворка с утилитами, для этого вам нужен SVN.
Все приведенные примеры для linux систем. Сделать по аналогии под Windows не составит труда.
Итак, скачиваем фреймворк:
svn co http://svn.dojotoolkit.org/src/view/anon/all/trunk dojotoolkit
Далее создаем файл конфигурации с указанными нужными виджетами и скриптами, у меня он вот такой:
dependencies ={
layers: [
{
name: "appdojo.js",
dependencies: [
"dojo.parser",
"dojo.date",
"dojo.cookie",
"dojo.data.ItemFileWriteStore",
"dojo.date.locale",
"dijit.Menu",
"dijit.Dialog",
"dijit.form.Form",
"dijit.form.TextBox",
"dijit.form.Button",
"dijit.form.CheckBox",
"dijit.form.DateTextBox",
"dijit.form.NumberTextBox",
"dijit.TitlePane",
"dijit._Calendar",
"dijit.layout.TabContainer",
"dijit.layout.ContentPane",
"dijit._Widget",
"dijit.TitlePane",
"dojox.dtl._HtmlTemplated",
"dojox.dtl.tag.logic",
"dojox.form.BusyButton"
]
}
],
prefixes: [
[ "dijit", "../dijit" ],
[ "dojox", "../dojox" ]
]
};
Сохраняем его в /dojotoolkit/util/buildscripts/profiles и называем соответственно app.profile.js
Далее у вас должен быть установлен jkd, у кого нет – качаем JDK 6 Update отсюда
http://java.sun.com/javase/downloads/index.jsp
Заходим в дерикторию dojotoolkit/util/buildscripts и запускаем build.sh (я указывал все опции, но этого делать не обязательно):
./build.sh action=clean,release profile=app profileFile=/home/ignar/dojo/dojotoolkit/util/buildscripts/profiles/app.profile.js releaseDir=/home/ignar/dojo/dojotoolkit/release/ loader=default optimize=shrinksafe
Пользователям винды нужно запускать аналогичный .bat файл.
После этих, не хитрых операций появляется папочка dojotoolkit/release/dojo, где находиться наша сборка.
Как работает:
В dojotoolkit/release/dojo/dojo/ появился скрипт appdojo.js. Теперь вам не надо подключать ничего кроме dojo.js и appdojo.js (и конечно, соответствующих css файлов)
Эти два скрипта содержат все необходимое. Так же сжаты и оптимизированы css файлы и остальные скрипты фреймворка.
Разница в скорости загрузки огромная, ходил под впечатлением весь оставшийся день
Удачного кодирования.

[...] Разводим Dojo Toolkit на максимальную производительность [...]