Подтвердить что ты не робот

Скрытые возможности Google Web Toolkit 2

Мне любопытно узнать, что скрывают скрытые и скрытые функции Google Web Toolkit 2 (GWT). Если вы знаете какие-либо трюки/функции, которые являются необычными, недокументированными или скрытыми в Javadocs, то чем они являются и почему они полезны?

Моим личным фаворитом был StyleSheetLoader, который был похоронен в приложении ShowCase в комплекте с GWT. Я использую его для динамически меняю таблицу стилей "на лету", чтобы предоставить возможности веб-приложений.

Резюме функции:

4b9b3361

Ответ 1

Это может быть немного старым, но до сих пор одним из моих фаворитов является ImageBundleDesign, Он собирает несколько похожих изображений на одно изображение, позиционируя его в разных местах с помощью трюков CSS. В результате у вас все еще есть разные образы в приложении, но на самом деле там только один передается с сервера. Экономит время загрузки. Надеюсь, вы еще этого не знали, или вы забыли об этом:)

Ответ 2

Есть тысячи вещей, которые неизвестны большинству разработчиков, но могут быть весьма полезными. Всего несколько примеров:

AsyncProxy Очень полезная вещь для реализации разделения кода. Фактически вы можете создать экземпляр класса, который еще не загружен, но вы можете вызывать методы на нем (с некоторыми ограничениями).

Распределенные сборки Опять же, мало кто знает, что вы можете скомпилировать приложение GWT на нескольких компьютерах (например, каждая перестановка может быть скомпилирована на другой машине )

Компиляция Multi-JVM. Почти каждый знает о -localWorkers флаг. Но не все знают, что вы действительно можете заставить GWT создать новую JVM для каждого Рабочего. Для этого запустите компилятор с -Dgwt.jjs.permutationWorkerFactory = com.google.gwt.dev.ExternalPermutationWorkerFactory (также этот параметр можно использовать для создания собственных пользовательских фабрик перестановок)

Duration.currentTimeMillis() полезный класс для измерения производительности

-extra параметр компилятора генерирует карту символов для обфускации кода.

Подстановочные знаки в выражениях JSNI. Например, когда вам нужно вызвать метод jave из JSNI вместо:

@com.company.MyClass::test(Ljava\lang\String;)(value);

Вы можете решить:

@com.company.MyClass::test(*)(value);

Ответ 3

Это может показаться немного странным, но "среда выполнения - это просто JavaScript".

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

Хммм. Конечно, вы можете получить педантичный, что время выполнения - DOM, CSS и т.д.;)