GWT - Predstavenie Google Web Toolkit

  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Declaration of views_handler_argument::init() should be compatible with views_handler::init(&$view, $options) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/handlers/views_handler_argument.inc on line 744.
  • strict warning: Declaration of views_handler_filter::options_validate() should be compatible with views_handler::options_validate($form, &$form_state) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/handlers/views_handler_filter.inc on line 607.
  • strict warning: Declaration of views_handler_filter::options_submit() should be compatible with views_handler::options_submit($form, &$form_state) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/handlers/views_handler_filter.inc on line 607.
  • strict warning: Declaration of views_handler_filter_node_status::operator_form() should be compatible with views_handler_filter::operator_form(&$form, &$form_state) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/modules/node/views_handler_filter_node_status.inc on line 13.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Declaration of views_handler_field_user::init() should be compatible with views_handler_field::init(&$view, $options) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/modules/user/views_handler_field_user.inc on line 47.
  • strict warning: Declaration of views_handler_field_node_new_comments::pre_render() should be compatible with views_handler_field::pre_render($values) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/modules/comment/views_handler_field_node_new_comments.inc on line 100.
  • strict warning: Declaration of views_handler_filter_boolean_operator::value_validate() should be compatible with views_handler_filter::value_validate($form, &$form_state) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/handlers/views_handler_filter_boolean_operator.inc on line 159.
  • strict warning: Non-static method view::load() should not be called statically in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/views/views.module on line 906.
  • strict warning: Declaration of date_handler_field_multiple::pre_render() should be compatible with content_handler_field_multiple::pre_render($values) in /var/www/virtual/mrazovci.eu/htdocs/sites/all/modules/date/date/date_handler_field_multiple.inc on line 185.
Verzia pre tlačSend by emailPDF verzia
Google Web Toolkit (GWT) je sada nástrojov pre vývoj, zostavovanie a optimalizáciu komplexných aplikácií, ktoré sú určené pre webové prehliadače. Cieľom GWT je umožniť rýchly vývoj vysokovýkonných webových aplikácií bez toho, aby vývojár poznal odlišnosti prehliadačov, XMLHttpRequest a JavaScript. GWT používa mnoho produktov od spoločnosti Google, vrátane Google Wave a Google AdWords. Má otvorený zdrojový kód, je úplne slobodný a využívajú ho tisíce vývojárov z celého sveta.

Čo sa nachádza v sade nástrojov?

GWT SDK obsahuje API rozhrania knižníc jazyka Java, prekladač a vývojový server. Umožní nám vytvárať klientské aplikácie v jazyku a zverejňovať ich v jazyku JavaScript.
Speed Tracer je rozšírenie pre prehliadač Chrome, ktoré umožňuje vyladiť výkon webových aplikácií.
Rozšírenie pre Eclipse doplní podporu do vývojového IDE rozhrania pre vytváranie webových projektov Google Web Toolkit a App Engine.
GWT Designer umožňuje za niekoľko minút vytvoriť používateľské rozhranie pomocou nástrojov na inteligentnú pomoc pri rozvrhnutí,  presúvanie pomocou myši, a automatické generovanie kódu.

Vývoj pomocou Google Web Toolkit

Zápis kódu

GWT SDK poskytuje sadu základných API rozhraní jazyka Java a Widgetov. Tieto umožňujú napísať aplikáciu využívajúcu technológiu AJAX v jazyku Java, a potom ju zostaviť ako vysoko optimalizovaný JavaScript, ktorý bude fungovať vo všetkých prehliadačoch vrátane prehliadačov pre Android a iPhone.

Vytváranie AJAXových aplikácií týmto spôsobom je rýchlejšie vďaka abstrakcii na vyššej úrovni nad bežnými konceptami akými sú objektový model DOM a komunikácia XHR.

Nie sme však obmedzení len na vopred pripravené widety. Všetko, čo sa dá urobiť s objektovým modelom DOM prehliadačov a pomocou jazyka  JavaScript sa dá urobiť v GWT, vrátane spolupráce s ručne napísaným JavaScriptom.

Ladenie

AJAXové aplikácie môžeme ladiť vo svojom obľúbenom vývojárskom IDE prostredí ako keby to boli desktopové aplikácie a v obľúbenom  prehliadači ako keby to bol program napísaný v jazyku JavaScript. Vývojársky zásuvný modul GWT vyplní priepasť medzi bajtkódom jazyka Java v odlaďovači a jazykom JavaScript v prehliadači.

Vďaka vývojárskemu zásuvnému modulu GWT, nie je potrebné prekladať kód do jazyka JavaScript aby sme ho videli v prehliadači. Môžeme používať rovnaký cyklus upraviť-obnoviť-zobraziť, na aký sme zvyknutí u jazyka JavaScript, no v rovnako čase môžeme preskúmať hodnotu premenných, nastaviť zarážky a využívať všetky ostatné dostupné nástroje odlaďovača ako v jazyku Java. A vďaka tomu vývojový režim GWT je teraz v samotnom prehliadači, môžeme pri písaní kódu v jazyku Java využívať nástroje ako Firebug a Inspector.


Optimalizácia

Google Web Toolkit obsahuje dva mocné nástroje na vytváranie  optimalizovaných webových aplikácií. Prekladač GWT vykonáva detailnú optimalizáciu naprieč celým kódom — in-lining methods, odstraňovanie mŕtveho kódu, optimalizáciu reťazcov, atď. Nastavením rozdeľovacích bodov v kóde, môžeme sťahovanie rozdeliť na viacero častí JavaScriptu, čím zabezpečíme rýchlejšie spustenie rozsiahlych aplikácií.

Úzke hrdlo vo výkone nie je spôsobené len JavaScriptom. Rozloženie prvkov v prehliadači a CSS sa len veľmi ťažko analyzujú. Nové rozšírenie prehliadača Chrome Extension s názvom Speed Tracer, ktoré je tiež súčasťou Google Web Toolkit, dokáže tieto problémy s výkonom analyzovať.


Spustenie

Keď sme pripravení aplikáciu nasadiť, GWT preloží zdrojový kód jazyka Java do samostatných, optimalizovaných JavaScriptových súborov, ktoré sa automaticky budú dať spustiť vo všetkých hlavných prehliadačoch vrátane prehliadačov v systémoch Android a iPhone, ktoré sú určené pre mobilné telefóny.


Ste pripravený začať?

Pomocou návodu Ako začať si stiahnite SDK, vytvorte jednoduchú aplikáciu a spustite ju. Prostredníctvom týchto podrobných návodov môžete prejsť základmi vývoja pomocou Google Web Toolkit.