MVP with GWT and GWTP

25
www.arcbees.com

description

 

Transcript of MVP with GWT and GWTP

Page 1: MVP with GWT and GWTP

www.arcbees.com

Page 2: MVP with GWT and GWTP

Gwt and GWTP MVP

www.arcbees.com

Page 3: MVP with GWT and GWTP

About ArcBees and about me

ArcBees•Founded by Christian Goudreau and Philippe Beaudoin•Two open source projects

• GWTP• Jukito

•More projects to come

Me•Entrepreneur•Open source fan•Dad

www.arcbees.com

Page 4: MVP with GWT and GWTP

GWTWhat is GWT?

• Build complex browser-based apps in Java• Java -> Javascript cross compiler• All the goddies of Java

• Rock-Solid IDEs• Refactoring• Unit Testing

• Deferred binding• Serves a different app to different users

• Browsers• Mobiles• I18N

• Code compression and remove unused references

www.arcbees.com

Page 5: MVP with GWT and GWTP

GWT-PlatformWhat about GWTP? (GOO-TEEPEE

• Build complex browser-based apps in Java• Java -> Javascript cross compiler• All the gooddies of Java

• Rock-Solid IDEs• Refactoring• Unit Testing

• Deferred binding• Serves a different app to different users

• Browsers• Mobiles• I18N

• Code compression and remove unused references

www.arcbees.com

Page 6: MVP with GWT and GWTP

  

MVP, MVC

Lousely coupled Easy to test code

www.arcbees.com

Page 7: MVP with GWT and GWTP

A little bit of code

Lifecycle functions•onBind()•onUnbind()•onReset()•onReveal()•prepareFromRequest(PlaceRequest request)

MVP with GWTP

www.arcbees.com

Page 8: MVP with GWT and GWTP

MVP with GWT Activity et Place

www.arcbees.com

Page 9: MVP with GWT and GWTP

Suite.

www.arcbees.com

Page 10: MVP with GWT and GWTP

Suite..

www.arcbees.com

Page 11: MVP with GWT and GWTP

Suite…

www.arcbees.com

Page 12: MVP with GWT and GWTP

Suite….

www.arcbees.com

Page 13: MVP with GWT and GWTP

And… even more! Kidding.

www.arcbees.com

Page 14: MVP with GWT and GWTP

Key concepts

www.arcbees.com

• Tokenizer• Place• ActivityMapper• Activity (Oh, you can call this one presenter… confusing)• View• PlaceController• PlaceHistoryHandler

Page 15: MVP with GWT and GWTP

Nested presenters

www.arcbees.com

• Are presenters included inside other presenters that can also be included inside presenters, and… so on!

Page 16: MVP with GWT and GWTP

Nested presenter in GWTP

www.arcbees.com

Page 17: MVP with GWT and GWTP

 Nested presenter with Activities, YAGNI?

www.arcbees.com

Page 18: MVP with GWT and GWTP

Suite.

www.arcbees.com

Page 19: MVP with GWT and GWTP

Don’t worry, on won’t go through the first example a second time.

www.arcbees.com

Page 20: MVP with GWT and GWTP

Advanced topics

www.arcbees.com

• Security• EventBus• Client / server communications• URL Parameters• Code splitting

Page 21: MVP with GWT and GWTP

• ClientActionHandlers• Eclipse and IntelliJ plugin• Code generators• Server side ActionValidators• Provider bundle• Bread crumbs• Dialog presenters• Presenter Widgets• Navigation confirmation• Etc.

And much much more…

www.arcbees.com

Page 22: MVP with GWT and GWTP

• GWTP and GWT are for structured web applications;• Web apps become easily testable;• Good tooling;• GWT optimize the JS outputted code;• GWTP MVP makes it easy to work in team and to modularize

content;• Same code base for mobile web application; • It’s the best way to write enterprise web applications.

• It’s not for Hello world web application;• It’s not for small web pages;• It’s not for functional languages fan (who wants to work with

fan boys anyway);• PS: I really enjoy RAD with Python or Ruby.

Conclusion

www.arcbees.com

Page 23: MVP with GWT and GWTP

• BookedIn• oVirt• Storeplacer• Phole-Halo• CRMdipidy

Great projects done with GWTP

www.arcbees.com

Page 24: MVP with GWT and GWTP

• http://code.google.com/p/gwt-platform/source/browse/#hg%2Fgwtp-samples

• http://code.google.com/p/gwtp-demo/

Samples

www.arcbees.com

Page 25: MVP with GWT and GWTP

www.arcbees.com