Google Web Toolkit

Transkrypt

Google Web Toolkit
Google Web Toolkit
Piotr Dobrowolski
Google
Google Confidential and Proprietary
Demo - timer
Google Confidential and Proprietary
O czym będę mówił
AJAX
GWT na ratunek!
Budowanie interfejsu użytkownika
Obsługa historii
RPC, czyli nie wszystko da się zrobić klienckiej stronie HTTP
Fast is better than slow!
Rozszerzanie GWT
Google Confidential and Proprietary
AJAX
Dlaczego AJAX?
• Szybkość (czas reakcji aplikacji)
• Szybkość (zmniejszenie obciążenia serwera)
• Szybkość (zmiejszenie ilości przesyłanych danych)
Dlaczego NIE AJAX?
• DOM w IE, Firefoxie, Operze...
• JavaScript jest paskudny
• Przycisk „wstecz”, debugowanie, testowanie, internacjonalizacja...
Google Confidential and Proprietary
GWT na ratunek
Czym tak właściwie jest GWT?
• Java!
• Open source!
• Zestaw bibliotek
• RPC
• Integracja z JUnit
• Narzędzia deweloperskie
• Fast is better than slow!
Google Confidential and Proprietary
Demo – tworzenie interfejsu
użytkownika
Google Confidential and Proprietary
Demo – historia
Google Confidential and Proprietary
Demo – RPC, czyli nie wszystko da
się zrobić po tej stronie HTTP
Google Confidential and Proprietary
Fast is better than slow (cz.1)
Struktura wynikowa
Strona HTML
Skrypt wybierający
Skrypt IE 5.0
angielski
Skrypt IE 5.0
polski
Skrypt Firefox
angielski
...
Image bundles
RPC
Google Confidential and Proprietary
Fast is better than slow (cz.2)
Wynikowy JavaScript
Pomiar wydajności
Google Confidential and Proprietary
Kiedy GWT nie wystarcza...
DOM
DOM.createAnchor();
DOM.setElementProperty(getElement(), "innerText", text);
JSNI
public static native void alert(String msg) /*-{
$wnd.alert(msg);
}-*/;
GWT.create
code.google.com
Google Confidential and Proprietary
Q&A
Google Confidential and Proprietary