170 likes | 376 Views
GWT. Razvoj RIA aplikacij z Google Web Toolkitom. Vsebina. Kaj je RIA RIA platforme GWT Razvoj Knjižnice Zaključek. RIA (Rich Internet Application) – Obogatena spletna aplikacija Spletne rešitve, ki premorejo funkcionalnosti, značilne za namizne aplikacije
E N D
GWT Razvoj RIA aplikacij z Google Web Toolkitom
Vsebina Kaj je RIA RIA platforme GWT Razvoj Knjižnice Zaključek
RIA (Rich Internet Application) – Obogatena spletna aplikacija Spletne rešitve, ki premorejo funkcionalnosti, značilne za namizne aplikacije Izvajajo se v spletnem brskalniku (ne potrebujejo namestitve) Velik del aplikacijske logike se izvaja na odjemalcu Kaj pomeni akronim RIA
RIA platforme • Vodilne tehnologije: • Adobe Flex • Microsoft WPF in Silverlight • Java • AJAX • GWT • Ostale tehnologije: • Open Laszlo • Nexaweb • Canoo • Backbase
Google Web Toolkit • GWT je produkt podjetja Google • Razvoj v jeziku Java • Prevajanje Jave v JavaScript • Podpora z orodji in knjižnicami • Poznan način razvoja • Razhroščevanje • Že izdelani gradniki • Brezplačno
Kakodeluje? • AJAX front-end v Javi • Prevajanje v JavaScript • Optimizacija • Spremembe so med razvojem takoj vidne • Možnost razroščevanja korak za korakom
Optimizirana JavaScript koda • Hitra, optimizirana JavaScript koda • Minimalna koda • Optimizacija klicev • Posebnosti posameznih brskalnikov
Hosted mode • Java razhroščevalnik • Produkcija – JavaScript • Razvoj – Java bytecode • Samostojne JavaScript datoteke Potekrazvoja
Lastnosti • Komunikacija s strežnikom preko RPC • Podoben RMI • Razširja sposobnosti aplikacije • Client in server paketa • Optimiziranne skripte glede na uporabniški profil • Več verzij prevedene kode • Ob izvajanju se naloži le ena verzija • Ponovna uporaba različnih komponent
Lastnosti • Uporaba drugih JavaScript knjižnic in JavaScript kode • JSNI – JavaScript Native Interface • Od GWT 1.5 celo mešanje objektov • Podpora za uporabo gumba “Nazaj” ter za brskalnikovo zgodovino • Lokalizacija • Izdelava iste aplikacije v več jezikih • Ohranjanje delovnega okolja • Obdržite svoj Java IDE
Widgeti-i • hyperlink • list box • Menu bar • Tree • Suggest box • Rich text area • Table • Tab bar • Dialog box • Popup panel • Stack panel • Vertical panel • Horizontal panel • Flow panel • Vertical split panel • Horizontal split panel • Dock panel • tab panel • Disclosure panel Button Push button Radio button Check box Date picker Toggle button Text box Password text box text area
Moduli <?xml version="1.0" encoding="UTF-8"?> <module rename-to='stockwatcher'> <inherits name='com.google.gwt.user.User'/> <inherits name='com.google.gwt.user.theme.standard.Standard'/> <entry-point class='com.google.gwt.sample.stockwatcher.client.StockWatcher'/> </module>
Primer aplikacije • … • public class StockWatcher implements EntryPoint • { • private VerticalPanel mainPanel = new VerticalPanel(); • private FlexTable stocksFlexTable = new FlexTable(); • private HorizontalPanel addPanel = new HorizontalPanel(); • private TextBox newSymbolTextBox = new TextBox(); • private Button addStockButton = new Button("Add"); • private Label lastUpdatedLabel = new Label(); • public void onModuleLoad() • { • stocksFlexTable.setText(0, 0, "Symbol"); • stocksFlexTable.setText(0, 1, "Price"); • stocksFlexTable.setText(0, 2, "Change"); • stocksFlexTable.setText(0, 3, "Remove"); • addPanel.add(newSymbolTextBox); • addPanel.add(addStockButton); • mainPanel.add(stocksFlexTable); • mainPanel.add(addPanel); • mainPanel.add(lastUpdatedLabel); • RootPanel.get("stockList").add(mainPanel); • } • }
Googlove API knjižnice za GWT so zbirka knjižnic, ki omogočajo uporabo Googlovih JavaScript knjižnic v GWT Java kodi Gadget-i so preproste HTML+JavaScript aplikacije, ki jih lahko uporabimo v spletnih straneh in drugih aplikacijah. Knjižnica lajša razvoj Gadgetov, saj avtomatsko generira njihovo specifikacijo iz Java kode Gears prinaša podporo za Gears API, kar vključuje LocalServer, Database, WorkerPool in integrirano podporo za nepovezano delovanje aplikacij Knjižnice
Knjižnice Google AJAX Search API omogoča vkjučevanje Googlovega iskalnega mehanizma, kar vključuje iskanje po spletu, lokalno iskanje ter iskanje multimedijskih vsebin Google Maps API omogoča dostop do Googlovih zemljevidovThe library gives you full control using the standard Maps components such as InfoWindows, Markers, MapTypes, and Geocoding. You can even use advanced features such as adding GWT widgets to the Map, creating custom overlays, custom map types, and other components. Google Visualization API omogoča prikaz podatkov v obliki raznih grafov, slavnih googlovih annotated timelineov in geomap