writing cool web 2.0 apps with gwt and ui bindings

Download Writing cool web 2.0 apps with GWT and UI Bindings

If you can't read please download the document

Upload: francesca1980

Post on 16-Apr-2017

1.039 views

Category:

Technology


4 download

TRANSCRIPT

Folie 1

Cool web apps with GWT
uberto barbini
[email protected]
twitter: @ramtop

RIA (flash) is dead, long live to RIA (js)aka Client/Server is back!

In the crowded world of web technologies is often hard to decide which one suits better our needs.

We think we have found a very good solution to do cool web sites with complex logic that requires javascript.

Gwt is a very good product, but till recently it was a problem to use it on clean web2.0-like sites.

We think that it's possible to do it in a simple way but it's still not widely know. Using with UiBindings and TDD.

We did 2 applications: a CMS and a Google Appengine one.

I'll talk about our experience, what we learned, and we'll share the complete code for an example application.

A CMS that doesn't suck

Blueprint experience

Some raw data:

BP numbers:4-5 people teamagile (scrum and kanban)gwt, hibernate, smartgwtstarted jan 2009 version 1.0 june 2009, now 3.2

total classes:1176total methods:6565total executable lines:27459

A web2.0 like application with a lot of logic

www.netnumero.comhttp://netnumero.appspot.com/company/mycompany#dashboard

www.netnumero.comNetNumero numbers:5 people on weekends and nights1 year with many pausesTest coverage:Total classes 94.1% (272/ 289) Total methods73.7% (1004/ 1363)Total lines79.1% (5125/ 6481)

What's GWT anyway?

good gwt tutorials: http://developerlife.com/tutorials/?p=80http://code.google.com/webtoolkit/doc/latest/tutorial/http://code.google.com/webtoolkit/articles/testing_methodologies_using_gwt.html

books:Essential GWT: Building for the Web with Google Web Toolkit 2 (Developer's Library) - Federico KerekiProgramming Google App Engine - D SandersonGrowing Object-Oriented Software, Guided by Tests - Steve Freeman, Nat Pryce

gwt vs plain html

gwt vs traditional ajax
(i.e. jsp + jquery)

Gwt +easier to debug

no new language to learn

easy to unit test client logic

Gwt -steeper learning curve

basic gwt is "ugly"

big js app to download (once)

Gwt is CS with elegance

(show discuss code)tag ServiceImplExample

Gwt UI/UX issues

Solution

Design metaphor

our metaphor: restaurant(go to the table -login)(menu -list of url)(waiter- event dispatcher)(waiter notebook- request)(table num- sessionId)(kitchen- server side)(food- response)

client cache, code split and event drive

Architecture and design

(show discuss example code)tag AsyncTestFailure

Presenter

View

Entities

Data services

Command pattern

AuthAuth and security

How to continue