59
How we built a million dollar business with GWT GWT.create 2013 Frankfurt QAFE Inc. Rokesh Jankie ([email protected]) Salar Abdefaily([email protected])

Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Embed Size (px)

DESCRIPTION

QAFE stands for Quality Application Framework for Enterprises. It was developed by Java and Oracle engineers to modernize Oracle Forms, and at the same time to create a modern platform for new business application development. QAFE separated the business logic from the presentation layer. Therefore, as the web evolves, developers do not have to rewrite their applications: because the QAFE engine, with the help of GWT and other toolkits, renders their logic to any frontend. http://gwtcreate.com/#agenda-eu_room1_event10 http://www.qafe.com

Citation preview

Page 6: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

QAFE• Quality Application Framework for

Enterprises.

• Created by Developers for Developers

• Makes sure you focus on business and not nitty-gritty of building applications

Page 21: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

QAFE ArchitectureFLEX HTML5

Presentation Framework (QPF)

Business Framework(QBF)

Java

“Third Parties”

OthersFront-end Technologies

Back-end Technologies

GWTQA

FE

DatabaseWebService

Mobile

Page 22: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

QAFE ArchitectureFLEX HTML5

Presentation Framework (QPF)

Business Framework(QBF)

Java

“Third Parties”

OthersFront-end Technologies

Back-end Technologies

GWTQA

FE

DatabaseWebService

Mobile

How do we do that ?QAML,

QAFE’s Markup Language

Page 26: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Design considerations• Shorter compilation times (fast development cycle)

• Any application with same size Javascript

• Easy for any developer, accessible for newbies

• Use the power of GWT under the hood

• We like Single Page Applications (SPAs)

• Use of Maven and other standards (web overlay)

Page 41: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Callbacks service.getShapes(dbName, new AsyncCallback() {

public void onSuccess(Shape[] result) {

}

public void onFailure(Throwable caught) {

} catch (IncompatibleRemoteServiceException e) {

// this client is not compatible with the server; cleanup and refresh the

// browser

} catch (InvocationException e) {

// the call didn't complete cleanly

} catch (Throwable e) {

// last resort -- a very unexpected exception

}

Page 42: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

CSS & Dom• Reading from IE8, from com.google.gwt.user.client.DOM class

public static java.lang.String getStyleAttribute(Element elem,java.lang.String attr)

• Put “background” in the DOM and get “BACKGROUND” back.

• We use LessCSS for clever CSS

Page 43: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Dependency Third-party Libraries

• gwt-mosaic

• gwt-incubator

• Wasn’t rebuilt by Google, had to make explicit request for that

• Wrapper of JS Libraries were hard!

• Still using gquery though!

Page 51: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

Page 52: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

Page 53: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

Page 54: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

• Focus on clean HTML output (Web Components!)

Page 55: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

• Focus on clean HTML output (Web Components!)

• Open Sourcing the QAFE Engine

Page 56: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

• Focus on clean HTML output (Web Components!)

• Open Sourcing the QAFE Engine

• Debugging using what we learned at “Compiler Deep Dive”

Page 57: Gwt create2013 Frankfurt: How we built a million dollar business with GWT

Future roadmap• From the first build until now a super solid solution!

• Cross Browser (even the older ones)

• Tuning in Javascript is immense!

• Continue to work with GWT

• Focus on clean HTML output (Web Components!)

• Open Sourcing the QAFE Engine

• Debugging using what we learned at “Compiler Deep Dive”