gwt widget frameworks_presentation

71
Comparison Of GWT Frameworks

Upload: david-amend

Post on 15-Jan-2015

1.982 views

Category:

Technology


1 download

DESCRIPTION

Comparison of GWT Frameworks, ext-GWT, Vaadin, SmartGWT Slides are in beta, David Amend

TRANSCRIPT

Page 1: Gwt widget frameworks_presentation

Comparison Of GWT Frameworks

Page 2: Gwt widget frameworks_presentation

Agenda

● The Situation Of Web Frameworks● Plain GWT● GWT-Widget Frameworks● Date Facts & Discussion

GWT

GWT

Page 3: Gwt widget frameworks_presentation

● David Amend○ Java Developer

○ Interests: Frontend Architectures, JavaScript, Triathlon-Sports

About

Page 4: Gwt widget frameworks_presentation

Your Background?

● Your Experience With Web Development?

● What Do You Want To Get From This Session?

Page 5: Gwt widget frameworks_presentation

Java for web applications?Is Wicket/JSF/GWT/Spring MVC your first choice to build an Enterprise Web Application?

You feel that there must be something wrong in your technology stack, because it can get so complex and time consuming to generate some data, surrounded with HTML tags and some dynamic behavior?

Check:http://de.slideshare.net/DavidAm/migration-from-java-to-modern-web-development-with-javascript-and-angular

Page 6: Gwt widget frameworks_presentation

Choice Of Web-Techniques

Page 7: Gwt widget frameworks_presentation

Which Web-FrameworkTo Choose ?

Page 8: Gwt widget frameworks_presentation

User Experience

Page 9: Gwt widget frameworks_presentation

Long Time Support

Page 10: Gwt widget frameworks_presentation

Money Matters

Page 11: Gwt widget frameworks_presentation

Time Matters

Page 14: Gwt widget frameworks_presentation

Is There A Conceptual Difference

Of

Web Frameworks?

Page 15: Gwt widget frameworks_presentation

Differentiation Of Web-Frameworks

Page 16: Gwt widget frameworks_presentation

Rich Internet Applications

No Session StateClear SeparationEasy ExchangeableEasy Extendable

Don't be fooled !- Separation of Client/Server

http://www.adobe.com/enterprise/pdfs/infotech-ria-business-case.pdfhttp://www.canoo.com/blog/wp-content/uploads/2007/04/jax07_riapatterns.pdf

Page 17: Gwt widget frameworks_presentation

Client-Server Hybrids

Page 18: Gwt widget frameworks_presentation

Clear Separation

GWT

GWT

REST

Page 19: Gwt widget frameworks_presentation

MVC/ MVVM on the client

+REST

Page 20: Gwt widget frameworks_presentation

Right tool for ... whom?

http://www.javacodegeeks.com/2012/01/gwt-pros-and-cons.html

Page 21: Gwt widget frameworks_presentation

Are you a

Java Service or

Web Developer ?

http://www.javacodegeeks.com/2012/01/gwt-pros-and-cons.html

Springsource, Craig Wallshttp://www.infoq.com/presentations/JavaScript-Frameworks-Review

Page 23: Gwt widget frameworks_presentation

Plain GWT

Page 24: Gwt widget frameworks_presentation

Plain GWT

Page 25: Gwt widget frameworks_presentation

Explanation of Technology

TODO

Page 26: Gwt widget frameworks_presentation

GWT

Pros● Good UI-Component-Set● Library not Framework● Web-Applications with Java and CSS● Very good debugging and IDE support● Good styling with CSS● Very large web applications possible● one HTML page possible

Page 27: Gwt widget frameworks_presentation

GWT

Cons● long compile times in large projects● not easy to work with web design first

approach● longer page load time● for large projects you need a little (?)

framework● not easy/possible to integrade ads (e. g.

Adsense)

Page 28: Gwt widget frameworks_presentation

Google X ToolkitsGWT

S-GWT Ext-GWT

GXT Vaadin

Page 29: Gwt widget frameworks_presentation

Smart GWT

Page 30: Gwt widget frameworks_presentation

SmartGWT Facts

1998

SmartClient2008

SmartGWT

Beta

SmartGWT Mobile

Page 31: Gwt widget frameworks_presentation

SmartGWT Facts

"Sjivan moved from Sencha"

http://jroller.com/sjivan/entry/update_on_future_direction_of1http://www.smartclient.com/company/ISC_LGPL.pdf

Comparison With Competitorshttp://www.smartclient.com/product/competition.jsp

Page 33: Gwt widget frameworks_presentation

SmartGWT Architecture

DataSource.xml

● SQL● REST● Hibernate● Custom

Server

Shared

Client

Client-Components

Criteria

● Read

Values

● Create● Updat

eDelete

Server-Logic

Page 34: Gwt widget frameworks_presentation

SmartGWT Facts

● Databound Components● Server-Support License● XML-Configuration● No DTOs

but Key-Value Mapping

Page 35: Gwt widget frameworks_presentation

SmartGWT

Page 36: Gwt widget frameworks_presentation

SmartJS

GWT

Page 37: Gwt widget frameworks_presentation

SmartGWT

"Never Mix Plain-GWT Code !!!"

Page 38: Gwt widget frameworks_presentation

SmartGWT

Pros

● Server-Side: Data-Binding, DataSources,- Independant Concepts

● Fast Start● Convention-Over-Configuration

Page 39: Gwt widget frameworks_presentation

SmartGWT

ProsQuick Start

Page 40: Gwt widget frameworks_presentation

SmartGWT

ProsRich UI-Component-Set

Page 41: Gwt widget frameworks_presentation

SmartGWT

Pros

Page 42: Gwt widget frameworks_presentation

SmartGWT

Cons● Learn New Concepts● No Open-Source of Server-Logic● Adaption Of Existing Services● JavaScript GWT-Wrapper, Initial Load Time● Customization, Workarounds, Layouting● Learning Resources ● Forum Support

Page 43: Gwt widget frameworks_presentation

SmartGWT

Cons

REST

Weak Adoption of

Server-Frameworks

Page 44: Gwt widget frameworks_presentation

EXT-GWT / GXT

GWT

Page 45: Gwt widget frameworks_presentation

EXT-GWT / GXT History

Sencha Touch, 2010

EXT-JS*, (YUI-Extension)< 2008

GWT-EXT (JS-Wrapper) 2008 2008, EXT-

GWT

Page 46: Gwt widget frameworks_presentation

EXT-GWT Version Change

Page 47: Gwt widget frameworks_presentation

GXT-Showcase

http://www.sencha.com/examples

Page 48: Gwt widget frameworks_presentation

Support

ProsExt-GWT

Page 49: Gwt widget frameworks_presentation

ProsExt-GWT

Page 50: Gwt widget frameworks_presentation

GXT: Pure GWT Implementation

Pros

GWT

Compatible

UI-Binding &

Event-Handling

Layout &

Design

Extendabl

e

Page 51: Gwt widget frameworks_presentation

ExtGWT

Cons

● No Open-Source● License Costs● Online Resources

Page 52: Gwt widget frameworks_presentation

ExtGWT

ConsFeels made forJava Devs < Web Devs

Page 53: Gwt widget frameworks_presentation

ExtGWT

ConsBad Backwards Compatibility In The Past 3.x Release Changes

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore

et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor

sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,

sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,

no sea takimata sanctus est Lorem ipsum dolor sit amet.Lorem ipsum dolor sit amet, consetetur

sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore

et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor

sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,

sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,

no sea takimata sanctus est Lorem ipsum dolor sit amet.Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed

diam nonumy eirmod tempor invidunt ut labore

et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor

sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,

sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,

no sea takimata sanctus est Lorem ipsum dolor sit amet.Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam

nonumy eirmod tempor invidunt ut labore

et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor

sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,

sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,

no sea takimata sanctus est Lorem ipsum dolor sit amet.Lorem ipsum dolor sit amet, consetetur sadipscin

g elitr, sed diam nonumy eirmod tempor invidunt ut labore

et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor

sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,

sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,

no sea takimata sanctus est Lorem ipsum dolor sit amet.

Page 54: Gwt widget frameworks_presentation

GWT

Page 55: Gwt widget frameworks_presentation

History

JS Vaadin

2002 2008

GWT-

Migration

TouchKit

Beta

Page 56: Gwt widget frameworks_presentation

Vaadin

Page 57: Gwt widget frameworks_presentation

Vaadin == ???

Page 58: Gwt widget frameworks_presentation

Vaadin == ???

Page 60: Gwt widget frameworks_presentation

Vaadin

● Support for JS & Plain GWT● Liferay Support● Paid Addon Collection● For Java Backend Developers

http://java4developers.com/2011/vaadin-server-side-ria-framework/https://vaadin.com/comparison

Pros

Page 61: Gwt widget frameworks_presentation

VAADIN

Pros

● No Single Page App● No DTO & RPC Issues

Page 62: Gwt widget frameworks_presentation

Vaadin

More Secured ???

Pros

Page 63: Gwt widget frameworks_presentation

VAADIN

Cons

● Traditional Server Side State● No Client-Handlers ? Less Interactive?● Dependant on HTTP-Session● Expect building your own framework

Page 64: Gwt widget frameworks_presentation

Comparison By DataFrom January, 2013

Page 65: Gwt widget frameworks_presentation

Forum Activity

Page 66: Gwt widget frameworks_presentation

Documentation

Page 67: Gwt widget frameworks_presentation

Search Results

Page 68: Gwt widget frameworks_presentation

Job Trends

http://www.indeed.com

Page 69: Gwt widget frameworks_presentation

Which Is Best ???

● History, Introduction & Future Plans of GWT, Sencha & Vaadinhttp://www.youtube.com/watch?v=VOf27ez_Hvg

● Open Discussionhttp://www.logemann.org/2010/09/ext-gwt-or-smartgwt-or-vaadin.html

Page 70: Gwt widget frameworks_presentation

Java for web applications?Is Wicket/JSF/GWT/Spring MVC your first choice to build an Enterprise Web Application?

You feel that there must be something wrong in your technology stack, because it can get so complex and time consuming to generate some data, surrounded with HTML tags and some dynamic behavior?

Check:http://de.slideshare.net/DavidAm/migration-from-java-to-modern-web-development-with-javascript-and-angular

Page 71: Gwt widget frameworks_presentation

Questions