Открыть сервис

Dojo Toolkit

Dojo Toolkit — это свободная кроссплатформенная JavaScript-библиотека с открытым исходным кодом, предназначенная для разработки клиентских веб-приложений и веб-интерфейсов. Dojo предоставляет разработчикам модульную архитектуру, набор виджетов, систему обработки событий, средства для работы с AJAX, анимацией, графикой (включая Canvas, SVG и VML), а также инструменты для создания Rich Internet Applications (RIA). Библиотека известна своей ориентацией на корпоративную разработку, где требуются стабильность, масштабируемость и поддержка сложной функциональности.

История

Создание и ранние версии

Проект Dojo был основан в 2004 году компанией Dojo Foundation, которая позже стала частью OpenJS Foundation. Первоначальная версия (0.4) была выпущена в 2005 году. Основными создателями считаются Алекс Расселл, Дилан Шиман и Дэвид Болликер. Целью проекта было создание универсального инструментария для упрощения разработки сложных веб-интерфейсов, не привязанного к конкретному браузеру.

Развитие и версии 1.x

В 2007 году вышла версия 1.0, которая закрепила за Dojo репутацию мощной и стабильной библиотеки. Версии 1.x активно развивались до середины 2010-х годов, получив широкое распространение в крупных корпоративных системах (например, в IBM, Cisco, Siemens, а также в российской платформе «1С-Битрикс» для построения визуальной части корпоративных порталов). В версиях 1.x были реализованы:

Эра версий 2.0 и упадок популярности

Начиная с 2015 года, команда Dojo приступила к разработке версии 2.0, которая кардинально переработала архитектуру библиотеки. В 2019 году вышел Dojo 6 (версия 2.0, переименованная в 6 по новой схеме нумерации). Новая версия полностью отказалась от устаревших механизмов (включая dojo.require) в пользу современной модульной системы ES6, TypeScript и виртуального DOM, что сделало её более похожей на фреймворки типа React или Vue.js. Однако к этому времени рынок веб-разработки уже был занят более лёгкими и быстро освоением фреймворками (React, Angular, Vue.js), и Dojo 2.0 не получил массового распространения. Последние стабильные релизы в версии 1.x (например, 1.16) выходили в 2019 году, а поддержка версии 2.0 была сведена к минимуму. На 2025 год Dojo Toolkit считается проектом, находящимся в состоянии поддержки устаревших систем, и практически не используется для новых разработок.

Классификация и архитектура

Основные компоненты

Dojo Toolkit традиционно делится на три ключевых пакета:

Модульная система

В версиях 1.x Dojo использовал собственную асинхронную модульную систему, основанную на функции require(). Разработчик писал код вида: ``javascript require(["dijit/form/Button", "dojo/dom"], function(Button, dom){ // использование виджетов }); `` В версии 2.0 и выше библиотека перешла на стандартную систему модулей ES6/TypeScript, отказавшись от устаревшего синтаксиса.

Устройство и характеристики

Система виджетов (Dijit)

Dijit является одной из самых развитых библиотек виджетов среди ранних JavaScript-фреймворков. Виджеты реализованы как классы, поддерживающие наследование, расширение и переопределение. Каждый виджет может содержать:

Работа с DOM и событиями

Dojo предоставляет кросcбраузерные обертки для работы с DOM-деревом (клонирование, удаление, изменение стилей). Система событий (dojo/on) поддерживает как стандартные DOM-события, так и пользовательские (кастомные) события, а также делегирование.

AJAX и взаимодействие с сервером

Для AJAX-запросов используется модуль dojo/request. Поддерживаются методы GET, POST, PUT, DELETE, загрузка JSON, XML, HTML-фрагментов. Также имеется инструмент dojo/request/iframe для отправки запросов через скрытые iframe (для загрузки файлов).

Средства для работы с графикой

Пакет dojox/charting позволяет строить столбчатые, линейные, круговые, точечные диаграммы и графики с возможностью анимации, масштабирования и наложения слоев. Поддерживается рендеринг через SVG, Canvas и VML (для старых браузеров). Также имеется средство для работы с векторными изображениями — dojox/geo/charting.

Применение

Корпоративные системы и CRM

Dojo Toolkit наибольшее распространение получил в сфере создания сложных корпоративных приложений с высокой степенью интеграции. Примеры использования:

Наследие

На 2025 год Dojo Toolkit продолжает использоваться в тех системах, где он был внедрён в период своей популярности (2005–2015 гг.). Новые проекты на его основе практически не создаются, за исключением ситуаций, когда требуется строгое наследование архитектуры устаревших систем. Поддержка версий 1.x официально прекращена.

Достоинства и недостатки

Достоинства

Недостатки

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →