Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > недовольство GWT


Автор: polosatij 6.10.2008, 15:01
прет сем  smile 

хотел бы обсудить тему GWT в этом топике, а за одно высказать своё недовольство по сему поводу..

посмотря книгу в книжном магазине про GWT меня как будто шарахнуло, что действительно так и будет выглядеть скоро интернет и вот, я как наивный суслик бросился за изучение всего этого вместе соединяющегося бреда и якобы супер кросплатформенного фрэймворка, типа написал на ява, оп-оа и у тебя всё чики-пики и не заботят больше никакие траблы.. тогда (два месяца назад) у меня был отпуск и я пролежал на пляже около недели и всё листал книгу назад и вперёд осваивая азы и изучая, как там и что.. 

сначало всё было зашибись.. положить пару кнопок в какую-нибудь панель не вызывало труда.. всё прекрасно работало.. пока...

.. пока я не решил написать какой-нибудь динамичный компонент.. типа, нажимаем на картинку, открывается окно, загружаются картинки и потом fadeIn на экран с переливом и прочим... но...

постепенно, копаясь в груде кода (так как меня ещё попётло и изучить супер пупер www.estjs.com) я стал натыкаться на реальные проблемы и ввязая в болото по 10 часов решал траблы "практически" не известного характера.. вот несколько их них:

1). не всё то, что работает в IE будет работать в Firefox, Opera или Chrome => так я протратив около 7ми часов написал workaround на sinkEvent при маппинге на img

это значит, дебаггить всё же нужно не только при помощи GWTShell (под windows) + IE, а ещё и под остальные browser-ы

2). при прямом обращении к классу window, js тормозит страшно и мне пришлось написать несколько классов (следуя примерам extjs) для анимации онного

3). загрузка картинок возможна только тогда, когда они прикреплены к DOM, а это значит, надо сделать пустой контейнер для этого и закидывать туда картинки.. не удивляйтесь, если onLoad не будет вызываться, т.к. картинки находятйса в cache brawser-а и тут следует следующий workarraund, например, закрашивать offset у картинки и если он не 0, то .. но, насколько я понял, почитав форумы, такое не везде проходит..

4). cashe IE никак не хочется очищаться самостоятельно, а это значит его надо чистить постоянно руками, если Вы копаетесь, например в .css.. иначе, вы просто не получите нужного результата и будете ломать голову, что же там не так..

итого за три дня и около 25 часов работы компонент был готов на половину.. глянув в Firebug меня немного покорёжило.. 

5). для долбанного окна нужно загрузить около 700-800K тупо присоединённых библиотек и кучу сгенерированного кода, отделить же нужные классы возможно можно, но на это нужно потратить ещё пару часов драгоценного времени.. а вдруг завтра ещё что-нибудь надо будет?

6). поисковики остаются за бортом, т.к. не будут просматривать js..

что получилось.. 

есть примерно около 7и классов по 100 строк, что описывают поведение, загрузку, workaround-ы и прочую ерунду.. хм.. если бы я начал писать всё на чистом .js и .html, я написал бы всё то, что имею за 2-4 часа, всё бы загружалось быстрее и у меня не было боязни, что при сл. update этот компонент завалится и придётся убить ещё десяток часов на поиск ошибок и путей их решения..

ИТОГО..

сижу, изучаю jQuery.. за два часа (не зная, что там и как) написал половину того с чем промучился в выходные несколько дней..  smile 

а Вы довольны GWT?  smile  

пы.сы. если я где-то не прав, прошу меня поправить => я не волшебник, я пока только учусь  smile 

Автор: Foror 6.10.2008, 15:12
>>6). поисковики остаются за бортом, т.к. не будут просматривать js..

Я вообще не понимаю зачем делать сайт на GWT, на нём можно делать проекты типа reader.google.com или gmail.com, но не сайты.

>>сижу, изучаю jQuery.. 

Я кстати пришёл к этому же выводу smile Проще взять jquery, хороший javascript редактор и писать на javascript, чем ждать компиляции java->javascript, изучать ограничения синтаксиса, навешывать тонны ненужного кода на клиента.

Автор: polosatij 6.10.2008, 15:21
Цитата(Foror @  6.10.2008,  15:12 Найти цитируемый пост)
Я вообще не понимаю зачем делать сайт на GWT, на нём можно делать проекты типа reader.google.com или gmail.com, но не сайты.


моя мысль была, писать части кода на GWT, т.к. есть уже не плохо выглядящие компоненты и зачем это всё заного писать, если уже имеются готовые  smile

Добавлено через 7 минут и 4 секунды
Цитата(Foror @  6.10.2008,  15:12 Найти цитируемый пост)
чем ждать компиляции java->javascript,


компиляции java -> javascript на надо ждать, есть GWTShell  smile 

Автор: Foror 6.10.2008, 17:08
>>моя мысль была, писать части кода на GWT, т.к. есть уже не плохо выглядящие компоненты и зачем это всё заного писать, если уже имеются готовые

Можно напрямую заюзать ExtJS, без GWT.

>>компиляции java -> javascript на надо ждать, есть GWTShell

Точно не помню, вроде на rsdn.ru, говорили, что иногда результат работы GWTSchell отличается от скомпилированного проекта.

Автор: polosatij 6.10.2008, 18:10


посмотрел плагины на jQuery, я так понимаю, придётся всё самому писать   smile :


1). не вижу путёвых компонентов (если кто знает, киньте линки)
2). всё buggy, порой до смешного.. 

 smile  smile 


Автор: integral 6.10.2008, 18:38
так что, все так плохо с GWT? а я как раз собирался поковырять... можно и не начинать?

порадовало http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks  Dojo и Echo3 выгдяжят самыми солидными

Автор: Foror 6.10.2008, 20:18
На данный момент считаю лучше почитать книги по JavaScript, разобраться с прототипами, посмотреть хаки для ООП (эмуляция пространств имён, наследование и т.д.). Параллельно посмотреть prototype, jquery, extjs и другие популярные js фреймворки. В итоге получить более гибкое средство для разработки веб-интерфейсов. 

Но думаю, если потратить месяца 3-4, то и в GWT можно приноровиться, наткнуться на большинство подводных камней, найти инфу как их обходят. Но и в JavaScript, нужно быть готовым к этим подводным камням smile В общем, тут дело вкуса, целей разрабатываемого проекта, наличие нужных спецов и т.д. и т.п.

Автор: diyko 31.10.2008, 19:06
Работаю з жвт более года
Использовал как жвт-екст так и екст-жвт
Зачем вообще использовать жаву для простих сайтов?
Все проблеми с жвт в основном из-за незнание как его использовать
Функционал схож на той какоой ви делали уже есть написан, поищите существующие библиотеки

Автор: v2v 31.10.2008, 23:41
Цитата(Foror @  6.10.2008,  15:12 Найти цитируемый пост)
, хороший javascript редактор 

тут поподробней, в чём пишете скрипты на jQuery , как тестите? как дебажите ? файрбаг? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)