С одной стороны вещь, с другой стороны очень тормозно, у нас используется грид с 200 и более строками, ресайз окна выплняется до 10 секунд, что слегка напрягает (или даже очень сильно, когда надо постоянно работать с этим окном), при 20 пунктах уже 2-3 секунды, но это не дело, видимо поэтому на сайте очень мало примеров с гридом внутри окна, который можно отресайзить.
Да и реализация API оставляет желать лучшего, что-то свое прикручивается очень долго, нужно было прикрутить полноценный столбик в дереве, ушло 8 часов.
Если сравнить к примеру с MFC, то там все достаточно логично (хотя в дерево столбик привязать тоже сложно), но всякие мелкие модификации проходят легко, в ExtJS свое добавлять заметно сложнее, хотя может просто привык к подходу Microsoft.
это часто просто ошибка проектирования - грид со столькими строками разбивается на страницы и все нормально работает. Перенос в приложение AIR позволяет получить серьёзный прирост быстродействия, в FF3 тоже быстрее.
Не зная хорошо MFC я не могу судить, но API у екста на отлично просто, по крайней мере в стравнении с другими.
Может мой опыт специфичный, но никогда не было нужды выходить за пределы стандартных контролов + некоторый расширений. именно потому что они стандартные.
в плане юзабилити проще работать с одним отсортированным списком и судя по получаемому хтмл коду, ему при изменении размера приходится на каждую строку менять 3 значения ширины, что и приводит к большим тормозам, хотя можно было реализовать и упрощенную схему, надеюсь что-нибудь появится со временем.
Там были плагины для лайвгрида, поищите на форуме. Так раз ваш случай. Я вот думаю,не написать ли свой view с использованием обычных html таблиц, без возможности менять ширину столбцов, но быстрый грид с поведением обычных html таблиц. Возможно даже с темплейтингом строк.
Я подписчик на их svn, и дело не в доступности, а в том что они ещё тыщу раз переделают этот контрол. И вы гляньте в исходники, там совсем не то, о чем я написал.
> это часто просто ошибка проектирования - грид со столькими строками разбивается на страницы и все
Ага, выводить нужную информацию — ошибка проектирования. Вы знаете, чем проще пользоваться скроллом, или переключением по страницам? Думаю, знаете. Станицы придуманы для того, что-бы меньше тормозило, а не для правильного проектирования. Если можно сделать без тормозов и без страниц — нужно делать.
Хех, чудо что оно работает и без особых глюков, учитывая, что современные веб технологии (html, js, dom, etc) по моему можно считать одним большим костылем для создания полноценного gui.
200 строк это не много, я сейчас заканчиваю грид, который может работать и с HTML сгенеренным на сервере и с данными - JSON/XML. 250строк на 35 столбцов рендерится 2-6 секунд(Safari/IE6-8/FF2-3) на средненьком одноядерном компе, нормально скролится, изменение размера столбцов, скрытие, перемена столбцов местами и пр, выбор строк, удаление, редактирование, поддержка клавиатуры. Даже с 5000 строк можно нормально работать, только начальный рендеринг занимает 10-40 секунд. В дальнейшем будет реализована подгрузка данных, так что последнее станет не так актуально. API - стандартный DOM - свойства, аттрибуты, события, можно прицеплять свои обработчики событий, свои редакторы. По поводу расширения/сужения функциональности тоже нет проблем - во фреймворке для которого делается грид есть наследование и расширение классов.
После прочтения статьи осталось впечатление, что для фреймворка (Backbase - backbase.com) для которого я работаю, это все пройденный давно этап.
Фреймворк делается совместимым с новой версией браузера ДО выхода браузера в свет, а не после. Тестируется с бета версиями браузеров. И нормальное явление, что браузеры(беты) косячат, тогда ДО выхода в свет сообщается им об ошибке, вместе с тестом и ошибки устраняются ( хотя Опера бывает игнорирует, в отличие от остальных)
Да иногда Ext действительно не очень быстрый. Например, окошки в 7-ом эксплорере заметно тормозят. Тем не менее библиотека отличная, ничего лучшего пока просто нет. Фактически полноценный фреймворк для создания интерфейсов, а не просто набор виджетов, как в других библиотеках.
это не для диалапщиков и то работает. это ДЛЯ ПРИЛОЖЕНИЙ, где не так важно сколько там килобайт. во время когда 128 кб минимально-обычная скорость инета везде (где есть платежеспособный и желающий получить функционал клиент). Это не для просто сайтов или домашних страниц-визиток и т.п.
там где нужно, она популярна. спросите Умпутуна, на чем они делают свои системы некоторые :)
это примерно 1/10 ЗП ОДНОГО разработчика (месячной). Вы уверены, что делаете именно такой проект, который, с одной стороны, коммерческий и подпадает под лицензию, с другой - настолько бедный, что нет денег на лицензию?
не так уж давно - лицензия была "почеловечнее". Со второй версии ввели такие условия. А в целом, если разрабатываете для фирмы - им не так уж критично заплатить 300 баксов.
он в визуальной части недотягивает даже до 1/10 части :) а так очень мощный, как раз планирую писать о нем большой обзор. Раньше делал большой проект, на середине разработки упёрлись и пришлось переходить сначала на связку Dojo+Ext а потом постепенно вообще на чистый ExtJS
Кстати, у меня в блоге переведена часть DojoBook (впрочем, очень малая, но планирую это дело продолжать). Жаль, не могу запостить переводы сюда, на Хабр.
Развёрнутый обзор ExtJS 2.2