Google Web Toolkit

индекс
73,45

Вышел GWT 2.0

GWT 2.0 официально доступен для загрузки. Новая версия содержит множество нововведений.
Кратко все эти возможности описаны в видео:


Так же в комплект теперь входит Speed Tracer — инструмент для анализа производительности любого (не только созданного c помощью GWT) веб-приложения в Google Chrome. Как он работает тоже можно посмотреть на видео:

Полностью обзор всех изменений можно прочитать в официальном блоге.
Ссылка для скачивания GWT 2.0
+33
9 декабря 2009, 12:24
16

комментарии (59)

0
alximik #
отличная новость =) спасибо!
+1
sidney3172 #
всегда пожалуйста, новость и на мой взгляд заслуживает внимания и должна быть на хабре.
+2
remal #
Очень круто! Но хочется графического построения интерфейса:)
0
sidney3172 #
ну есть же тулзы для этого(плагин для eclipse). Правда платная штука.
Но по-моему такие средства разработки -зло. Построить интерфейс (по крайней мере в GWT) и руками не сложно и не долго, но при этом не будет ничего лишнего.
0
remal #
Кстати, а есть возможность перестроить интерфейс в уже готовом приложении?

Если есть, то какова безопасность этого? Можно ли таким образом давать пользователям создавать скины, к примеру?
0
sidney3172 #
Это все можно. А уж на сколько это безопасно — зависит от вашей реализации.
0
remal #
Не доводилось работать с GWT, поэтому буду благодарен, если этот вопрос раскроете чуть подробнее, либо дадите ссылки, где можно почитать.
0
sidney3172 #
ну вот пример от самого гугла. Showcase
тут меняется скин «на лету». Там и сорцы можно скачать и посмотреть как это делается — это не сложно совсем.

А что вы понимали под «перестроить интерфейс готового приложения»?
0
remal #
Имел ввиду именно создание скина конечным пользователем. Он, к примеру, заливает набор XML, они компилируются во что-то GTW'шное и сайт обретает новый скин. Вопросы: можно ли, как, насколько безопасно?
0
sidney3172 #
как сменить скин динамически есть в предыдущем примере.
А как залить новый скин — это не проблема (скин — набор css+картинки) просто залить набор файликов от пользователя (проверив их коненчо). Пример с полным циклом, наверное, не найду.
0
remal #
Под скинов я подразумевал не только картинки и CSS, но и весь шаблон тоже.
0
sidney3172 #
ну тогда не знаю как вам помочь :( Готового такого ничего нет (по крайней мере я не натыкался), но реализовать самому можно.
0
sidney3172 #
а вот тут есть даже генератор скинов.
–2
MuI_I_Ika #
Мне понравилась идея такого средства разработки. Хочу попробовать что-нибудь в нем сделать. Может кто подкинет идею для первого приложения.
0
Mecid #
опередили на пару минут
–2
sqrt #
Отлично, качаю
+1
DoctorMozg #
Круть :) Наконец-то в Firefox дебажить будет можно :)
НЛО прилетело и опубликовало эту надпись здесь
0
sidney3172 #
очень просто. если он будет это продавать, то никто просто не будет это покупать.
А так и используют и развивают и всем хорошо.
+1
claymore #
дык хотят подсадить всех на свое средство разработки. а потом-то уже могут и монетизировать когда деваться будет некуда.
Хотя, я конечно верю в существование «доброго, вечного» в Google. время покажет.
0
troorl1985 #
Кто в современном мире продает фреймворки или библиотеки? Сейчас плохим тоном считается даже просто закрытость средств разработки, а платность — так и подавно.
Касательно именно GWT все просто. Гугл зарабатывает на рекламе, а не на продаже своих продуктов. Все их действия направлены на расширение рынка рекламы, пусть даже косвенно. Одним из таких действий является увеличение функционала и удобства онлайновых сервисов. Это тоже им выгодно. То же самое с хромом или андроидом, только под другим углом.
0
claymore #
На счет библиотек — все еще продают. И, думаю, еще будут продвавать. Добавлю что еще можно глянуть на Ext и ExtGWT. Их тип лицензии вполне позволяет компании зарабатывать и развиваться дальше.

Конечно у Google совсем другие источники дохода. Но не забываем что возможности остаются возможностями и никто не мешает им онными воспользоваться.
0
troorl1985 #
А кто продает? Что-то на ум никто из больших компаний не приходит. Даже Микрософт по возможности открывает свое девелоперское хозяйство.
0
claymore #
Если мы говорим о больших компаниях — да, у них сейчас цель популяризовать свою платформу для привличения большего количества пользователей и проприетарная лицензия сразу же подорвет распространенность. Хотя, опять же, открытость кода не означает что платформа/технология так же свободно доступна для комерческих разработок.
В плане веб фреймворков, могу согласиться что подавляющее большинство из них имеют открытые лицензии.
0
d1Mm #
почему на видео никто не смотрит в камеру? все говорят куда-то в сторону
0
akral #
Потому что неприятно смотреть, когда человек смотрит в камеру.
Это не новости.

Когда репортёры на улице берут интервью — первым делом говорят: «не смотри в камеру, смотри сюда». Из личного опыта.
0
troorl1985 #
А еще они явно читают, а не на ходу придумывают :3
0
sidney3172 #
потому что это программисты, а не пресс-аташе какие-нибудь.
0
hsmishka #
Опробовал новинку в бою. Господа, не суетитесь обновляться.
Попробовал перенести проект на новый GWT — обломился debug mode.
Клиентскую часть поремонтировал добавлением в projname.gwt.xml строчки
/>

Серверная сторона не поддаётся пока.
Плагин назад откатываться не стал. Вобщем не переносите существующий проект. Рановато, похоже.
0
hsmishka #
Похерилась строчка…
<source path='client'/>
+1
webus #
Новость отличная. Но пока посижу на GWT 1.7. Тут поднимали тему скинов. У меня стоит подобная задача. Допустим у меня в приложении есть некий конструктор, в котором можно писать на Groovy. Пока Groovy код обрабатывается на серверной стороне. Хотелось бы чтобы custom-разработчик мог на Groovy коде писать дополнения к UI на GWT. Как вы думаете, возможно ли такое?
0
intenter #
GWT компилирует Java-код в Javascript. Боюсь, что проделать такое с groovy он пока не может.
–1
nimeku #
Не очень впечатляет технология GWT.
Большого, масштабируемого проекта на ней точно не построишь, да и много проблем с построением интерфейса из java кода. В общем гугл создал фреймворк для мелких однозадачных online приложений.
+1
remal #
Либо вы плохо читали документацию, либо у вас есть уникальный опыт, которым будет полезно поделиться
0
nimeku #
3-х лет разработки и ползания по документации хватило чтобы оценить масштабируемость и прелести построения интерфейсов на этом фреймворке.
0
JetHedgehog #
3 года разработки с использованием каких инструментов/фреймворков?
0
nimeku #
Начинали работать с GWT когда он ещё был в бета-стадии, поэтому за три года успели сделать свой небольшой фреймворк на основе которого и строили свое приложение. Хочу сказать что как только проект стал приобретать более менее большие размеры, браузеры никак не хотели работать быстро, особенно это касается IE.
По поводу инструментов — Eclipse + стандартный GWT, остальное все свое.
0
JetHedgehog #
Я немного запутался. Работали три года со стандартным GWT, но решили от него отказаться в пользу своего фреймворка?
0
nimeku #
да, немного не поняли, я имел ввиду что используя стандартные возможности GWT мы написали свой мини-фреймворк (виджеты, формы, протокол для пересылки данных и т.д) на котором уже строили свою апликуху.
0
JetHedgehog #
Т.е. GWT в качестве базы для вас оказался всё-таки хорош? :)
+2
nimeku #
Изначально предполагалось что GWT облегчит жизнь при построении интерфейса, тут вроде бы все красиво — и язык Java и обещают кроссбраузерное поведение, а на деле получается так что в итоге пришлось писать native js функции просто чтобы добится одинакового поведения изменения размеров панелей в разных браузерах. Перехват нажатия клавиш в редакторе тоже не работает, в общем там целый список мелочей из-за которых фреймворк не подходит для крупных проектов, но например для почтового клиента это самое то.
Стоимость разработки такая же как если бы писали на любом js фреймворке.

0
VlK #
а альтернативы какие можно придумать?

Ну типа чтобы и серверную часть было легко писать, и клиентскую.
+2
nimeku #
Я за Java и веб сервисы на сервере.
А с клиентом надо решать исходя из поставленных задач, для веба можно к примеру jQuery + js templating?
0
JetHedgehog #
Спасибо за подробный комментарий.
0
VlK #
Чего не понятно… Три года работали. В результате получился еще один фреймворк поверх GWT. Почему? Потому что неудобно. Плюс проблемы были с браузерами. Естественно, больше всего — с IE.

Кроме того, nemeku мне лично ныл про то, что под Оперой не пашет вообще.
0
JetHedgehog #
Ясно. Гугл действительно не очень дружит с Оперой…
0
GEMOzloBIN #
Гмайл — типичный пример «мелких однозадачных online приложений.» =)
0
TolTol #
Не GMail, а Google Analytics
0
nimeku #
в точку!
0
hsmishka #
На вот посмотри что можно строить с GWT www.smartclient.com/smartgwt/showcase/#main
Сейчас JAVA EE проект со свинга переносим на smartGWT.
0
nimeku #
я работал и со SmartGWT, могу сказать что пока вы пользуетесь стандартными виджетами — все окей, но понадобится ввести какое-то изменение, например drag and drop для выпадающего списка — вы огребете по полной.
0
hsmishka #
Не без того. Время от времени огребаем. Но за полгода накопился опыт. Что-то дописываем, где-то мухлюем. Апликуха уже выглядит красивее чем её свинговый аналог. Есть с формами проблемы, но все они обходятся.
0
nimeku #
То что получится красивее чем на свинге не спорю, но обычно корпоративные системы очень требовательны к

масштабируемости и всякой интеграции, а что тут может предложить GWT?
Если Java EE, может лучше сразу на liferay portal?
0
hsmishka #
Про liferay portal первый раз читаю сегодня.
Вообще заказчик продиктовал инструментарий. Тут творчество проявлялось в переносе ГУЙовой части на GWT+smartGWT.
А по поводу масштабируемости, то проект унаследовал архитектуру от свинговой версии и тут очень повезло — её разрабатывали талантливые люди у которых бы поучиться.

Возможно, самый правильный вариант для фреймворка — это путь smartGWT, JS фреймворк обёрнутый интерфейсом к GWT.
–1
VlK #
Ну так Swing — это вообще изврат страшный. Даже на не очень изящном (или даже очень неизящном) языке — С++ — Qt уделывает Swing/Java по интуитивносте, простоте и удобству.

Ума не приложу, как это возможно. Вроде Swing появился попозже, могли бы опыт чужой использовать.
–1
nimeku #
Просто пацаны когда делали свинг видимо слишком прониклись идеей ООП, вот и получилась такая Объектно-Ориентированная какашка.
+1
realstudent #
Блин — SWING стандарт, также как и QT в определенной области (но QT активно развивается — потому он меньшая какашка). Лично мне QT не нравится, я использую wxWidgets.
Ничего ужасного в SWING нет, если вы мега-мастер портируйте QT под Java — и увидите что это никому будет не нужно 0 — ибо стандарт, или не api stable.

GWT компилер сворачивает обьектную JAVA модель в модель Javascript.
Не ничего удивительного что для GWT взяли обьектную модель SWING — людей работавших с ним море и, соответственно, уровень первоначального вхождения в технологию сглаживается.
0
VlK #
На Java есть QT.

А какая разница, стандарт или нет? Стандартность вроде как определяет неизбежность использования, но никак не качества технологии. Приведу пару живых примеров.

Скажем, С++. Стандарт? Стандарт. Язык сложный, мутный, большой? Угу. Все ноют? Ноют. И пофиг. Тот же самый ласковый D даже с поддержкой Александреску особо в популярности не прибавил, хотя даже сравнивать не приходится в чисто удобственном стиле.

Возьмем стандартную библиотеку С++ или, если конкретно, STL. Забудем на минутку сторонние библиотеки — они ведь нестадартны. Все цивилизованное человечество уже использует utf-8, радуется жизни и в ус не дует. А вот С++ вообще никакого комфорта не предоставляет в этом смысле…

Мне, кстати, тоже wxWidgets глубоко симпатичен, как быстрый и легкий фреймворк. Но там другие проблемы. Qt же — это целый мир, из которого выходить вообще не надо, потому как все прям на месте есть: и тебе QString беспроблемный, и сетевой интрументарий, и браузер, и очаровательный QGraphicView, и блэкджек, и шлюхи.

А Swing… Блин, там на каждый плевок нужно городить массу классов, локальных, анонимных, синих, зеленых… Oververbose получается капитальный.
0
CyMpak #
Вверху несколько комментов с позитивной реакцией на GWT 2.0 минусанули. Кто может пояснить в чем тут фишка?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.