RoCS08 Viorel Spinu

Post on 17-Dec-2014

565 views 10 download

description

Google Web Toolkit

transcript

Google Web Toolkit

Viorel SpînuManaging Partner, Sety

RoCS 08

18 Noiembrie

Sety

Viorel Spînu, Managing Partner

in cadrul Sety, companie axata pe

consultanta si dezvoltarea de

solutii bazate pe tehnologia Java

Am facut soft ca programator, apoi ca project

manager, iar acum ca antreprenor in cadrul Sety

Sety

1. clasic, GWT

clasic server side: PHP, Ruby, Java,...

client side: HTML, Javascript, CSS

server side: PHP, Ruby, Java,...

client side: JAVA -> HTMLJAVA -> HTMLGWT

Sety

2. cum ?

Sety

3. adica rulez Java pe client ?

NU

scrii Java doar cat dezvolti

pe productie pui HTML si Javascript optimizat,

generat automat din codul Java

e un fel de applet ?

Sety

4. bun, dar DE CE ?

ca sa nu iti schimbi calculatorul prea repede

Sety

5. chiar merge pe orice browser ?

DA (cele care conteaza)

Mozilla Firefox

Internet Explorer

Safari

Opera

Google Chrome

Sety

6. un ciclu

dezvolti aplicatia web in cod Java debug modifici, faci reload fara redeploy

Sety

7. un ciclu

generezi pentru productie

Sety

8. si performanta ?

este

Firefox, engleza

Firefox, franceza

IE, engleza

IE, franceza

cod JavaScript optimizat

* cod nefolosit -> eliminat

* metode inline, cand este cazul

echipa GTW :

“codul generat de compilatorul nostru

este probabil mai bun decat ar putea

scrie vreodata o fiinta umana”

- modesti, nu-i asa? :)

incarci doar ce iti trebuie

Sety

9. the BIG win : cod usor de intretinut

-> OOP

-> static type (erori prinse la compilare)

-> IDE-uri performante (Eclipse, IntelliJ)

-> debug simplu

-> OOP -> patterns

-> teste unitare pentru interfata

Sety

10. am o aplicatie web deja scrisa...

mai pot folosi GWT fara sa o rescriu complet ?

DA !

Sety

11. se integreaza cu JavaScript nativ

se poate si in sensul JavaScript -> GWT

GWT -> JavaScript

Sety

12. chiar e totul

NU

javascript pur -> no google indexingpastreaza si pagini HTML statice !

procesul de compilare dureazamodule separate !

echipa de design -> cod java – mai complicat curba de invatare

?

Sety

13. un exemplu

business goal : 90% dintre interactiuni cu

raspuns sub o secunda

solutie : cod executat pe client, merg la

server doar cand este absoluta nevoie

Sety

14. business logic pe client

Sety

stateless server

statefull client

15.

Sety

16. inca un exemplu

business goal : senzatie de aplicatie desktop,

fara page reload

solutie : cod executat pe client, merg la

server doar cand este absoluta nevoie

Sety

17. ar fi putut functiona fara server (!)

Sety

18. resurse

http://code.google.com/webtoolkit/

http://groups.google.com/group/Google-Web-Toolkit

http://googlewebtoolkit.blogspot.com/

Sety

19. mi-ar placea sa ne auzim

viorel.spinu@sety.ro

blog : http://www.spinu.ro

twitter : viorelspinu