Июнь 5, 2008
Выбор AJAX-фреймворка для построения RIA-приложений
Сейчас в Ideco Software (компания, которая делает продвинутый корпоративный интернет-шлюз) мы начинаем делать одну классную штуку на базе AJAX. Это будет настоящее Rich Internet Application (увы, не знаю русский аналог термина). Подробности пока умалчиваю, ибо коммерческая тайна – да и не в них суть.
А суть в том, что сейчас я поделюсь выводами о без малого десятке полноценных AJAX-библиотек общего назначения, которые могут претендовать на роль серьезного фундамента для создания RIA-приложений.
Полный список фреймворков общего назначения можной найти здесь: http://ajaxpatterns.org/Javascript_Multipurpose_Frameworks. Я просмотрел все заслуживающие внимания и отобрал восемь библиотек, которые удовлетворяли следующим условиям:
- Достаточная зрелость самой библиотеки
- Полный комплект основных UI-виджетов (trees, grids, dialogs, windows, etc.)
- Наличие хорошей документации, сэмплов и группы поддержки
- Удобство кодирования с точки зрения программиста
- Четкая лицензионная политика
В итоге появилась следующая табличка с плюсами и минусами отобранных вариантов (поверьте на слово, что остальные не стоят и вашего внимания). Я всегда считал, что более-менее ориентируюсь в ситуации, но признаюсь честно – из этого списка знал только 2-3 фреймворка, остальные буквально “открыл” для себя.
———- ExtJS [ http://www.extjs.com ] ———-
Плюсы:
- Широко распространена
- Огромный набор качественных виджетов
- Можно собрать под себя (чтобы уменьшить объем загружаемого кода)
- Есть примеры серьезных приложений [ Jama Contour - http://www.jamasoftware.com ]
- Лицензия на разработчика, стоимость менее $300
Минусы:
- «Закос» под интерфейс Windows Vista (это также и плюс)
———- Backbase [ http://www.backbase.com ] ———-
Плюсы:
- Широкий набор виджетов
- Заточено под Enterprise, есть много мощных средств работы с данными
Минусы
- Программирование через некий аналог XML-файлов (не приветствуется среди программистов)
- Жуткая стоимость (взято из статьи 2006 года – AJAX Client Edition от $6,000 за CPU; AJAX JSF and AJAX Struts от $8,000 за CPU)
———- QooXDoo [ http://qooxdoo.org ] ———-
Плюсы:
- Распространяется по лицензии LGPL
- Качественные и легкие виджеты
- Внешний вид виджетов более спокойный и похожий на веб, чем у ExtJS
- Есть таблицы с авто-сортировкой столбцов, они плоские (похожи на веб)
- Система классов, удобный для программиста код (установка свойств в коде через вызовы методов)
Минусы
- НЕ НАШЕЛ !!!
———- Yahoo UI [ http://developer.yahoo.com/yui/ ] ———-
Плюсы:
- BSD license
- Огромный объем документации, примеров, база пользователей и групп
- Красивый и удобный код
Минусы
- Коллекция виджетов меньше, чем у продвинутых конкурентов
- Внешний вид виджетов несколько примитивный и устаревший
———- Bindows [ http://www.bindows.net ] ———-
Плюсы:
- Матерый фреймворк, много примеров серьезных приложений
Минусы
- Требует приобретения как лицензии разработчика ($195), так и дополнительно оплаты от $199 в год за один процессор – и это для МАССОВЫХ приложений (и также зависит от количества пользователей приложения)
———- TIBCO [ http://www.tibco.com/devnet/gi/ ] ———-
Плюсы:
- Open Source
- Солидный фреймворк для крупных предприятий
Минусы
- Громоздкий устаревший интерфейс
- Логика на JavaScript, но конфигурирование на XML – неудобно для программиста
———- SmartClient [ http://www.smartclient.com ] ———-
Плюсы:
- Матерый фреймворк, опыт использования в серьезных организациях
- Большой набор виджетов
- Хорошая поддержка Enterprise-технологий, таких как Java-сервера
Минусы
- Специфичный интерфейс, выглядит устаревшим
- При разработке массовых приложений нужно платить от $1950 за лицензию на девелопера
———- ActiveWidgets [ http://www.activewidgets.com ] ———-
Плюсы:
- Виджеты один в один как в Windows XP
Минусы
- Похоже их не уж так много
- Видимо, библиотека почти не развивается и не имеет большой базы пользователей
- Стоимость одной лицензии на разработчика $495
P.S: Буду очень благодарен людям, которые прокомментируют на основе собственного опыта использования тех или иных библиотек. Где-то я мог быть неточен или совсем неправ.
P.P.S: Чуть позже поделюсь, что мы выбрали для себя и почему.

Февраль 28, 2006 - 16:27 -
Интересная тема в комментариях к “10 правил для интернет-стартапов” – три варианта перевода всего одного слова – и совсем разный смысл нескольких “правил”. Лучше читать в оригинале.
Март 1, 2006 - 6:11 -
Конец найму.
http://www.perevedem.ru/article/hiring_is_obsolete_full.htm
Март 21, 2010 - 4:52 -
Здравствуйте))
какой фреймворк в итоге выбрали?
Мне нужно разработать файл менеджер похожий на проводник в windows . Может посоветуете какой лучше использовать для данной задачи.