Збільш свій прибуток з GWT
DiykoОпубликовано 4.11.2008 в Статьи
“like as Google” ©
Десь трохи більше року тому довелось мені познайомитись з такою технологією як GWT (GoogleWebToolkit). До GWT я мав невеликий досвід роботи зі стратсом і стратс-подібним фреймворком. Мабуть для багатьох знайоме написання інтерфейсу за допомогою JSP і величезної кількості JavaScript. Багато хто мабуть писав аплікації, які працювали тільки під експлорером, можливо дехто навіть займався адаптацією готових аплікацій від IE до FireFox, тож може оцінити наскільки це паскудна штука. Починали ми писати проект на версії 1.4 , яка щойно з’явилась, тоді був відчутний брак п’ятої джави, проте вже з релізнутої версії 1.5 цього недоліку всі позбулись. Та й набір компонент розроблених сторонніми розробниками відчутно зріс. Мабуть тому GWT на мене справив надзвичайно позитивне враження. Ніяких (ну майже ніяких) проблем з кросбраузерністю, і взагалі ніякого джаваскрипта вручну (скажімо на 99%). Легка комунікація клієнтської і серверної частини.
Загалом фреймворк розвивається дуже динамічно, з’являється безліч нових, і що важливо корисних, бібліотек. Мені та й багатьом іншим, хто розробляє ПЗ на GWT, інструментарій видається вельми зручним. GWT доволі легко інтегрується з іншими фреймворками і не тільки. Ви можете використовувати GWT разом з Grails, PHP, JSF, Seam, etc і навіть .NET, що, очевидно, значно розширює область застосування. Також, що доволі важливо, можна писати юніт-тести використовуючи JUnit. Важливим аспектом є легке та зручне відлагодження аплікації, адже весь код написаний на джаві та вільно дебагається, як локально так і на серверах, стандартними засобами. Думаю, той хто шукав алертами у скриптах помилки, або намагався сапортити писану на xml/xslt клієнтську частину, мене зрозуміє.
Звичайно є свої проблеми. Мабуть головними з них по перше є часто-густо великий розмір клієнтської частини, хоча при швидкому інтернеті це не так і важливо і друге — це спільна проблема для Flex/Flash/Silverlight/GWT рішень — погана індексація пошуковими енжінами, знову ж таки при потребі обидві ці проблеми можна вирішити, а у корпоративних рішеннях, що працюють у внутрішній мережі ці проблеми ніколи і не виникнуть.
Проте найбільший інтерес GWT мав би викликати у кастомерів. Для замовників і працедавців GWT доволі вигідне рішення з багатьох причин. Насамперед аплікації, написані на GWT попадають під такі модні скорочення як AJAX, RIA чи WEB 2.0, що добре у маркетингу. Плюсом можна вважати і те, що це розробка від Google, гарно маніпулюючи тим, що продукти Google розроблені на GWT чи схожою технологією.
Надзвичайно легкий для навчання фреймворк дозволяє залучати в проект не тільки кваліфікованих девелоперів, але й новачків, у надзвичайно короткі терміни, що знижує вартість проекту. Швидкість розробки аплікації, як на мою суб’єктивну думку, доволі висока, що важливо в часи коли швидкість реалізації ідеї дає конкурентну перевагу.
Зовнішній вигляд аплікацій вражає, адже розроблено ряд бібліотек з набором красивих компонент таких як GWT-EXT (обгорнута в компоненти популярна бібліотека EXTJS), GXT (EXT-GWT), SmartGWT, GQuery (обгорнута біблотека JQuery).
Не раз чув відгуки про те, що аплікація дуже красива, були і побажання, щоб було “like as Google” (що ми доволі успішно і реалізовували). Фанкі бізнес в дії — зустрічають по обгортці, а як пощастить проводжати не будуть )))
Ще одним важливим аспектом може стати швидка, проста і як наслідок дешева підтримка розроблених рішень. Очевидно, що використання GWT на проекті може дати відчутний економічний ефект (такий важливий в умовах фінансової кризи
).
GWT дає можливість швидко і дешево розробляти сучасні, з чудовим дизайном, високоясні рішення, які завжди цінуються на ринку. Як наслідок попит на GWT аплікації швидко зростає достатньо тільки поглянути на джоб-тренд:
Ну і не будемо забувати про задоволеність розробників, це теж дуже важлива річ (яка зменшує плинність кадрів
), а розробляти проект на GWT — це таки задоволення.
У наступних статтях я спробую поділитись свої досвідом здобутим на двох проектах писаних на GWT, можливо комусь це буде цікаво.
Невеликий перелік речей, які написані на/з GWT:
- http://checkout.google.com/
- http://base.google.com/
- http://www.myerp.com/index.php/en/
- http://highnoon.appspot.com/
- http://wishzettel.com/
- http://code.google.com/p/minig/
- http://moderator.appspot.com/
- https://www.clarityaccounting.com/demo
Update:

Для розробки використано GWT+GXT
P. S.
Велике дякую Андрію за допомогу у написанні статті.
P. P. S.
Ще одне велике дякую Мирославі за натхнення.
Diyko
diykorey@gmail.com
Понравилась статья? Подпишись на обновления по RSS/E-mail



(14 голосов, средний: 3.79 из 5)
Интеграция со Spring оставляет желать лучшего.
Можно добавить для сравнения Wicket.
Якого роду інтеграція зі спрінгом вас цікавить?
Тобто яка мета застосування спрінга на проекті
Diyko, использовать IOC контейнер и утилитные классы Spring.
Меня впечатлила легкость написанного на украинском текста. Автору – зачет, не всем дано так хорошо обращаться с держ.мовою.
“Вільно дебагається” – вообще шедевр!
2Denix
підключення IOC взагалі не має нічого нового
ось тут є стандартний приклад http://www.javabeat.net/tips/94-setter-injection-in-spring-ioc.html
А ось тут є як доступатись до віддаленої спрінг аплікації із GWT
http://www.shinetech.com/pages/viewpage.action?pageId=1396
і теж нічого незвичайного
Diyko, что такое “віддаленої спрінг аплікації із GWT”?
Ладно, у меня просто времени это обсуждать нету.
Если бы вы пробовали создать приложение на основе GWT и Spring, то, наверное, написали бы об этом в статье.
Если IOC – то тогда уже Guice
. Милая вещь.
Из опыта работы с GWT.
1. От GXT отказался, т.к. он навязывает собственный MVC, замену всех стандартных виджетов. API чрезвычайно странный.
2. GWT-EXT – это, как правильно замечено, лишь обертка. Т.е. ломается дебаггинг средствами IDE.
3. Несколько специфичный RPC (*Async), нужно дублировать методы. Но раз въехать – и пользоваться можно, благо, все очень просто. Подобная нелогичность наблюдается и в некоторых местах Android. Почему-то решили не прикрывать.
4. Wicket – это несколько другая целевая аудитория. GWT идеален для написания различных корпоративных приложений, для которых сейчас используется, скажем, Apache Beehive + Bea Weblogic и подобный unmaintainable crap. Там не нужна индексация пауками, не нужны навороты интерфейса. Функционал и поддерживаемость – это все. Wicket же более подходит для классических web-приложений для Internet: html+js+ логика на джаве всем этим рулит. Кстати, отдельные модули GWT можно вставлять и в существующий сайт.
Как по мне – GWT – это web2,5 для разработчика, когда javascript приобретает статус ассемблера для java developer. Все знают, что он есть, но работают на более высоком уровне абстракции.
В общем, отличный продукт, рекомендую для получения результата в короткие сроки.
А причем Spring к GWT? GWT это набор компонентов, который компилится в HTML и JS. На стороне серва обыкновенный сервлет с домешками GWT.Проблем с интеграцией никаких не возникает (по крайней мере на нашем проекте их нет).
Беда JAVA коммьюнити для вэба, в том что оно наплодило такое гиганское количество фрэймворков, что в них не разобраться, вместо того что бы сфокусироваться на нескольких основных. Только я пробовал десяток. Посмотрите на ASP.NET – при всех своих недостатках, более документированого,рапидного фрэймворка и удобной среды разработки вы вряд ли найдете. Я приверженец стандартов, то есть JSF, тем более что 2 версия не за горами. А будет очень много интересных нововведений, например теже WebBeans от Seam.
2Yaroslav Nosa
Це і біда і перевага
Насправді попри різномаїття технологій є ряд найбільш популярних
так всі знають про стратс спрінг хібернейт єджібі і джсф
Ці технології закривають 90% ринку
GWT може претендувати на найкраще рішення при розробці GUI для корпоративних рішень
Ще є tatami – GWT + Dojo
Цікава стаття, мені сподобалась, тож чекаю на продовження. Сподіваюсь побачити у наступних публікаціях дещо із реальної практики,а не теорію.
Yaroslav Nosa, зачем всему комьюнити фокусироватся на фреймворках.
Фокусироватся нужно на тех фреймворках, с которыми работаешь в данный момент времени.
А про .NET – они ж плагиатом стырили у java большинство фреймворков и идей разработки.
Посмотрите на Gmail.com, Ebay.com, LinkedIn – все работает на java и на разных фреймворках.
2Roma
буде продовження
А що саме вам буде найцікавіше?
GWT даеёт возможность разрабатывать визуально убогие решения, заставляет web дизайнеров заглядывать в код, что бы вытащить id компонентов для CSS, заставляет программистов делать из сайта некую модальную форму в смысле GUI
шаг влево, шаг вправо и вы обречены биться головой об стену.
Ось тут скріншот аплікації писаної на GWT+GXT
http://sharebee.com/44ce770d
можете подивитись і сказати скільки часу займе зробити такий інтерфейс стандартними засобами і накскільки він “убогий”)))
Щодо CSS тодля конкретної компоненти setStyleName присвоює потрібний CSS, а якщо хочете переписати всі стилі для всіх компонентів то навіть в цьому випадку це не так багато компонент та й не виникає такої потреби перевизначати всі поголовно стилі
GWT необходим для создания веб-приложений, имеющих схожую функциональность с десктопными, а не для того чтоб писать сайты.Сайты пишутся на php + smarty.
2Андрей
На GWT можна написати, що завгодно, ніякої привязки до десктопа немає, я просто навів такий зразок міг щось зовсім інше зробити.
Наразі використання GWT у вебі обмежується великим розміром вихідного скрипта, що змушує або писати маленькі аплікації або використовувати в ентерпрайзі для внутрішніх мереж, проте вже у версії 1.6 проблема монолітного вихідного срипта буде вирішена
Лінкедін чи фейсбук на пхп+смарті не напишеш
после близкой работы с GWT-Ext могу сказать что работа с подобными враперами очень не удобна и приложения подобные со скриншотом очень тормознутые и неповоротливые.
имхо мне понравился чистый GWT и его неплохо применять в обычных веб-приложениях.
я писав дві аплікації з GWT-EXT – все швидко працює, швидше ніж аплікації писані із застосуванням інших аджакс фреймворків
Не виключаю правда, що на слабих машинах можуть бути проблеми, але це малоймовірно
На чистому GWT можна писати якщо маєш сильного дизайнера і багато ресурсу на імплементацію всяких “рюшечок”
> Лінкедін чи фейсбук на пхп+смарті не напишеш
Фейсбук написан на php
2kebriam
Визнаю приклад був невдалий )))
Страница со статьей была открыта в Фаерфоксе два дня. Под конец 2-го дня ради интереса почитал. Очень впечатлило
Впечатлили примеры использования. Понравился стиль изложения. Слышал про GWT уже давно. Все никак не мог найти время попробовать хотя бы хеллоу-ворлд сделать. После статьи попробую 
Знакомый-фрилансер давно подсел на нее и слазить не собирается.
Автору большой респект и уважение. Будем ждать продолжения уже с конкретными примерами. Пишите еще!
Спасибо за статью
Я б сказал, что выход Google Chrome изменил эту ситуацию.
Да, но в то же время GTX, как по мне, на данный момент лучшая библиотека UI элементов расширяющая возможности GWT. Так у них есть довольно неплохая реализация таблиц с подгрузкой данных.
http://extjs.com/explorer/ – вот их демка.
2Imp
Погоджуюсь з вами
та й загалом ще раз скажу GWT-Ext в реальних аплікаціях працює швидко
Я запускав на Athlon1600 – працює чудово
Якщо слово “Java”викликає огиду (без холіворів будь-ласка), то має сенс дивитися в бік – http://www.sproutcore.com/
Досить прикольно реалізований MVC каркас запозичивши декілька кльових моментів у Obj C.
тема зарабатывания денег не раскрыта:
* фриланс на ГВТ никакой
* кодить на зарплату – это не от ГВТ зависит
* для продуктовых коипаний – они и сами знают что почем и ГВТ как один из ЗАВИСИМЫХ фреймворков здесь ничего не решает.
да и график достаточно тенденциозный – любая относительно новая технология даст максимальный ОТНОСИТЕЛЬНЫЙ прирост в самом начале. А абсолютные цифры скромно умалчиваются.
Ты определись сначала со стилем написания, – тебе трудно ангийские понятия писать по англ.? Что это за кирилизация???
Что за Фанкі бізнес, енжінами???
или ты забыв как они пишуься???
Сначала научись писать нормально!!!!!!
2slava
Давно я так над комментарием не смеялся.
Трішки мав справу з GWT. Не вразив то мяко сказано.
2slava
я тільки на рахунок фанкі бізнесу відпишу
є така хороша книжка “Бізнес у стилі фанк” Йонаса Ріддерстрале й Кьєлла Нордстрема
рекомендую почитати всім
Доречі пан білорус?
2KIHOMEXAHIK
Мета була розказати про GWT та популяризувати
1)фріланс на джава ентерпрайз сам по собі не дуже а для веброзробок GWT буде придатний з версії 1.6
2)кодити на зарплату взагалі ні від чого не залежить
3)пункт третій не зрозумілий, ті компанії які працюють з жвт на продакшин продуктом задоволені
2HighJustice
а я працю вже півтора року і мене вразив
Я от думаю чи були б бажаючі відвідати якусь конференцію по GWT або щоб скромніше сказати – семінар
Якщо б були я постарався зібрати людей які мають досвід у розробці комерційній на GWT і вони поділились би досвідом
Показали б приклади
На UA Web 2008 була доповідь про GWT (Применение GWT для построения Web 2.0 (Валентин Шибанов).
2Diyko
Те що вас вразив видно із статті
Хочу поделиться собственным опытом . В проекте на GWT пробовал различные обвертки типа GWT-EXT и так далее все казалось супер, но собственный код на чистом GWT был шустрее ,необходимый дизайн лучше делать с помощью css и только ,без крайней необходимости( типа panel.setHeight(..); в коде что позволяет думать только о логике и а дизайн оставить дизайнерам( дизайн любой сложности !), связь с серверной частью лучше использовать родной XML-RPC если серверная часть java а там что угодно (Hibernate,Spring) – чисто классика и не надо готовых решений – хотя они есть и не плохие( GWT Widget Library). Согласен GWT это уже даже 3G для Java developera – динамика развития только подтверждает это . Думаю кто попробует и если есть выбор
тот подсядет на GWT и не пожалеет как и я тоже.
2Luxor погоджуюсь повністю
обгортки рятують у ситуації коли нема дизайнерів і взагалі ресурси і час на розробку обмежений
Два моменти:
- Абсолютний відсоток вакансій менше 0.02%
- Згідно із класичним “дзвоном”, стрибок популярності GWT пояснюється
ранніми адептами.
А чи перейде він “прогалину” – це питання.
ну будемо бачити
тут ще є ряд трендів http://stuff.ongwt.com/gwttrends122007
доречі наразі окрім всяких бібліотек з компонентами зявилась бібліотека AOP для GWT http://code.google.com/p/gwt-ent/wiki/AOP
А как по-хорошему в разработке отделить проект с RPC сервисами от проекта GWT как такового? А то с SOPовскими ограничениями все в куче – GWT, SRING, Hibernate…
ну розділення там чітке і практично примусове
весь код що стосується інтерфейсу мусить знаходитись в пакеті client(по замовчуванню, за бажання можна вказати іншу назву), весь код що стосується сервер сайду знаходиться в пакеті server
як організувати структури проекту це вже справа техніки
тут є мультимодульний проект
http://gwt-maven.googlecode.com/svn/trunk/maven-googlewebtoolkit2-sample/
а тут описано як скручувати жвт проект за допомогою ант чи мейвен
http://www.developers.org.ua/archives/diyko/2008/11/17/gwt-and-build-systems/
Ну если забить на Eclipse и отладку в хост-режиме в общем-то можно и так.
Я хотел остаться в рамках 2х эклипсовских проектов
– GWT со своим отладчиком и хост-модом и занятым портом 8888
– Dynamic Web Project для RPC части и портом 8080 на живом томкэте
А в продуктив уже хоть ant хоть maven
не бачу ніяких проблем, працюю з мультимодульним проектом
Правда для відладки всього коду в хост-моді потрібно щоразу компіювати весь код інакше не бачить зміни в модулях а тільки в клієнті
А ідея сама підтягує все наскільки я знаю
У меня проблема с тем что называется Single Origin Policy – localhost:8888 который источинк “GWT статики” и localhost:8080 на котором RPC считаются РАЗНЫМИ сайтами. И невзирая на -whitelist в параметрах GWTShell он выдает ошибку сетевого доступа.
Вот и здесь о том же
http://groups.google.com/group/Google-Web-Toolkit/msg/ece678197d6c4994
і ви теж не хочете використовувати noserver mode?
Хочу. Мешает запуск сервера Tomcat с местом для приложения в виде workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\
Криво это как-то… В общем плавно с GWT проблемы переезжаем в Eclipse. Хотя за ссылочку где конфигурируется этот параметр в Eclipse был бы признателен…
Нашел – в Run configuration диалоге. В параметрах VM
Не знаю насколько легально…
я не до кінця розумію вашу проблему, але
щоб запустити аплікацію задеплоєну на томкаті в хостмоді для дебагу потрібно:
1) задеплоїти аплікацію на томкат і запустити томкат
(спробуйте доступитись до аплікації через броузер, якщо доступились крок 2)
2) в ланч файлі потрібно поправити таку стрічку (додати параметри виділені жирним)
<stringAttribute key=”org.eclipse.jdt.launching.PROGRAM_ARGUMENTS” value=”-noserver -out www http://localhost:7001/YOUR_APPLICATION/“/>
3)запустити в дебаг моді
якщо у вас не екліпс – потрібно пошукати де вказані оці параметри -out www і додати вищенаведені параметри
Эх хорошо бы это все в какой-то wiki вываливать. Для окончательного решения вопросов
Вроде задышало.
А не подскажете еще – как побороться с задваиванием файлов интерфейсов удаленных сервисов в GWT проекте и проете для RPC? Ссылки CLASSPATH одного проекта на другой выключают ошибку в Eclipse, но она появляется во время исполнения.
що означає задвоювання інтерфейсів?
яка виникає помилка?
якщо опис великий присилайте в приват
Переведите на русский статью, пожалуйста. Буду сильно благодарен.
По поводу “GUI для корпоративних рішень” и “Не виключаю правда, що на слабих машинах можуть бути проблеми, але це малоймовірно”…
Попробуйте сделать модальное окошко с табличкой колонок на 15-20 и ещё несколько элементов кинуть на него и подвигайте его, а ещё лучше ресайз браузера.
Вот если это все выполнить на компьютере обычном, “офисном”, то эта операция займет немалое время… Тоже самое на формах на которых около 50 различных элементов управления. Видел такое на чистом GWT и на GWT-Ext.
У корпоративных приложений есть ещё и требования по отклику, в которые никак не укладывается GWT, при более-менее сложных формах.
Google классный потому что там 10 элементов управления и все, вот только бизнесу это трудно доказать – что больше не надо…
P.S. А вообще я Oracle-ист. Просто вижу как мы “гробим” второй проект этой модной технологией…
2Chik
Цікавить – пишіть в приват, лишайте контакти
Ну почнемо з того що мета аплікації робити роботу, а не заганяти броузер
Аналогічно спробуйте зробити те що ви запропонували на чомусь іншому і подивитесь як воно буде працювати
Велике значення має архітектура і люди які пишуть аплікацію
Задачі створення модальних вікон, ресайзання і сування вікон не є пріорітетними, виконуються рідко, а якщо аплікація розрахована на малопотужні компютери то такий функціонал можна заборонити
Я теж пишу проекти на GWT і чомусь в нас вони не гробляться
Може вашій компанії варто взяти консультантами людей з досвідом
Доречі маю хорошу пропозицію для Оракліста
Хочу подкинуть и обсудить проблему. Предположим Веб приложение на GWT мы написали, все красиво, почти все работает и почти как мы хотели, отдали заказчику и он почти заплатил деньги и тут …. а как насчет SEO? . И тут начинаються как кто то сказал “танцы с бубном”. Как могло получиться так что сделав такой прекрасный фрейворк и не заложить поддержку оптимизации хотя бы для собственного бота? Где то прочитал что делали тесты на выполнение javascript Googlebot и подтвердили что он умеет это делать, но официально представители Google или просто отмалчиваються или рекомендуют общие принцыпы для Web.2 . Но GWT не просто Ajax это сплошной Ajax и javascript. Я не один день потратил на поиски какого нибудь удачного решения, вопрос остался открытым.Что скажите а?
Та що тут сказати
По перше – GWT все таки краще для корпоративних рішень, яким СЕО по барабану
По друге – всетаки можна придумати як реалізувати сайт так щоб пошуковики його бачили, хоч і з певними зусиллями
По третє – думаю не за горами коли гугл буде бачити як мінімум сайти писані на GWT
Загалом аналогічна проблема є у багатьох технологій
Если нужно чтобы веб сайт нормально индексировался поисковиком , тогда вместо GWT можно использовать Apache Wicket или Tapestry.
Я считаю что идея посторения rich GUI клиента на javascript фреймворках не правильная. Манипулировать DOM’ ом веб страницы чтобы добиться каких-то визуальных еффектов – это тупиковый путь, можно сказать хак. Лучше использовать Adobe Flex, потому что эта технология специально разрабатывалась для эффективного GUI.
В чому проявляється тупик?))
Вікет наскільки я знаю погано масштабується
З тапестрі не працював, але судячи по всьому там інша ідея і порівнювати з GWT важко
Питання насправді не у візуалізації просто технологія намагається дати інструмент який дозволить будувати мережеві проекти схожі на десктоп
Питання в зручності кінцевого продукту
Для GWT динамічне оперування даними на сторінці – природнє
Динамічні дерева, таблиці які легко налаштовуються, дані які оновлюються по частинах, драг енд дроп, таби, лайаути зручні – все це написати на GWT елементарно
А хто писав таке на чомусь іншому той знає що це штука нетривіальна, яка містить повно непередбачуваних проблем, важко дебагається і т.д.
Фактично зараз проблем з GWT дуже мало
1) Кінцевий розмір скрипта (у версії 1.6 це питання зніметься)
2) Погана індексація пошуковиками (можна вирішити доклавши трохи зусиль, є надія що гугл з часом буде індексувати GWT проекти)
3) Теоретично повільна робота на старих компютерах(ця проблема стає щоразу менш актуальна, починаючи від CPU1000 – 1500MHz)
Тупик в том что поскольку GWT рисует с помощью операций над DOM HTML, это означает что его возможности ограничены стандартом DOM + HTML. Преимущенство такого подхода – он основан на стандарте который поддерживается всеми браузерами. В то же время имеем существенный недостаток -поскольку HTML относится к семейству markup languages и предназначен для отображение текста, в нем отсутсвуют даже элементарные операции вращения геометрических обьектов и навряд ли когда нибудь появятся. Поэтому даже такие простые эффекты которые можно видеть здесьhttp://www.scrapblog.com/ невозможно реализовать на javascript + DOM + HTML. Для форм GWT рулит, но если надо написать например музыкальный или графический редактор – тут уже GWT не поможет. Мой прогноз – расстояние между десктоп и веб аппликейшенами будет уменьшаться, все больше аппликейшенов будет запускаться через браузер. Поэтому требования к GUI будут все время возрастать, и GWT не сможет конкурировать с Flex. Стандарт HTML обновляется раз в несколько лет, а Adobe Flex может выпускать новую версию своего движка каждые полгода. Поэтому я считаю что использование GWT будет уменшаться, а Flex наоборот увеличит свою долю в сегменте rich web applications.
Скільки десктоп аплікації ви бачили з таким функціоналом http://www.scrapblog.com/ ? ну окрім іграшок
Вам би сподобалось якби ворд був нашпигований анімацією?
Доречі в GWT є ще отаке ліба від гугла
http://code.google.com/apis/visualization/documentation/gallery.html
AJAX и GWT в частности были неизбежным шагом в развитии тонкого клиента. Интенсивный ввод данных через браузер невозможно осуществить на основе других технологий (плагины не берем, Silverlite, Java WebStart не берем). Разубедите меня.
Просто если мы играем на поле с плагинами тут мне кажется уже будет интересна просто Java, SWT, FX и прочая прочая…
То есть это – другая жизнь. Нужен богатый текстовый функционал прямо из флакона – AJAX и GWT. А иначе – все вопросы связанные с развертыванием приложений, упаковкой объектов для обмена с сервером, безопасность внутри навороченого клиента – все заново…
Java-аплеты придумали так давно что их уже почти забыли, а по сути они решали те задачи которые стоят сегодня, а там что угодно и rich интерфейс и вся мощь java , вот только где они сейчас ?, т.е. кто их использует при создания веб-приложений? Проблема в том что они требуют локальную среду выполнения то есть java машину на клиенте – это ли не одно и то же когда вы загружаете очередной плагин в виде плеера ? Кроме того подгрузка java занимает не мало времени для небольшого аплета – а что было бы если весь сайт это большой аплет. Конечно – это нелепо , а почему? А вот почему и есть ответ применения разных плагинных технологий в разработке. Ничего плохого об этих технологиях сказать не хочу , более того многие из них заслуживают уважения. Нельзя всех пересадить или заставить использовать тот же Flex какой он хорош бы не был, существует инерция (пример цифровой стандарт существует много лет – а воплощать его не хотят – все многомиллиардное оборудование махом не заменишь) аналогия и здесь, вот поэтому и возникают решения такие как GWT, сейчас эта технология на стадии развития, что то придет на смену это точно, но на данный момент это лучшее решение. Мой первый и основной язык был java и изучение javacript для меня было непосильная задача,
благодаря GWT я решил эту проблему и мои знания не куда не делись при создании навороченных тонких клиентов, вот в чем сила GWT
Тестируя GWT приложение в различных браузерах последних версий а именно Google Chrome2, Safari4, Opera10, Firefox3.5 за исключением IE 7-8 заметил явную тенденцию ускорения загрузки и отображения даже тяжелого одностраничного приложения на GWT. Очень хороший прогресс, я бы сказал – достаточный чтобы новый пользователь у которого даже нет кеша в браузере не нервничал, ограничение остается на очень слабых машинах и на слабом канале связи – тогда тормоза очень большие. Тестируемое приложение было перекомпилировано на GWT 1.7. Хотелось бы отметить что и различий в отображении контента почти нет , за исключением в IE. Частичная поддержка CSS3 и HTML5 в перечисленных браузерах тоже радует. Google обратил внимание на развитие беспроводных сетей для доступа к Интернет, имеется ввиду 3G, заявление о выходе собственной OS на базе Linux (не путать с gOS), выпуск netbook, противостояние браузеров Google и “компания” – Microsoft, Android и Windows Mobile . Тенденция на лицо – ближайшее будушее это – очень быстро загружаемая операционная система возможно с флешки в любом терминале,которые будут стоять везде например в магазинах кинотеатрах просто на улице, и быстрый доступ до своего профиля посредством мощного канала связи через браузер , сервисы Google растут ка на дрожжах. Как Вам картина а? И GWT здесь играет не последнюю роль – пример Google Wave .
Очень жаль что тема GWT не интересна и что данная ветка умерла. Не так не много русско- или украинско- язычных ресурсов есть по данной теме.
Меня рассмешила одна новость от Google. Как говориться “если гора не идет к Мухамеду – тогда он идет к горе”. Я о том что Google’ у надоел не “расторопный” браузер IE6 – IE8 и они сделали плагин который встраивается в IE и работает как Chrome (Google Chrome Frame).
Данная новость меня сначала обрадовала (так как я последнее время пишу на GWT),потому что IE упорно тормозит с JS не говоря уж о CSS3 и HTML5. И хоя процедура простая – вставить в мета тег одну строчку
(например: )
в загружаемую страницу, но заставить пользователя загрузить данный плагин (учитывая что он не понимает для чего это надо, раз он до сих пор использует например IE6) будет проблематично и не решает проблему в целом.
мабуть обговорення цієї теми вичерпало себе
Я планував написати статтю з порівняльними характеристиками найпопулярніших бібліотек для GWT проте часу мало і нові версії випереджають написання моєї статті
31 числа на циклумі буде проводитись айтіжем і я буду там виступати на тему Evolution of GWT кому цікаво може прийти послухати
Більше тут
http://jug-lviv.blogspot.com/2009/10/it-jam.html