spring day | wavemaker - spring roo - springsource tool suite: choosing the right tool for the right...
DESCRIPTION
2011-10-31 | 02:15 PM - 03:00 PMThere are many tools out there to help developers working with the Spring framework and its manifold extensions. But it's not always easy to choose the right tool for the job. This talk guides you through the tooling landscape for Spring and illustrates when to use Spring Roo, WaveMaker or the SpringSource Tool Suite. Demos and examples give the audience first-hand insights and useful hints how to use and combine those tools effectively.TRANSCRIPT
© 2011 SpringSource, A division of VMware. All rights reserved
WaveMaker – Spring Roo – SpringSource Tool Suite Choosing the right tool for the right job
Martin Lippert [email protected]
2 2
Speaker Introduction
§ Martin Lippert • Senior Member Technical Staff, R&D
• Lead, Spring Development Tools
3 3
The landscape
WaveMaker Spring Roo
SpringSource Tool Suite
4 4
WaveMaker – a quick look
§ It’s some kind of 4GL tool for web-apps • You can quickly create standard CRUD apps • drag&drop and visual editors, no real coding
• Produces a JavaScript based web app • you can implement stuff yourself (JavaScript for the front-end and
Java for the back-end), but that should be a rare case
§ Behind the scenes • Generates a Spring-based web app
• Uses lots of JavaScript for the app • Is focused on the front-end, Java experience is poor
• Will use Spring Roo under the hood (not yet there) • Is open-source and itself web-based
5 5
WaveMaker
Demo
6 6
Spring Roo – a quick look
§ Scaffolding for Spring developers • Let the expert Java and Spring developer to the “real” work • Generates the boring stuff for you, like
• Models and mappings • CRUD services • Basic web UI (mvc, gwt, others)
• Produces a regular and good looking Java/Spring project
• Is an addition to the Java/Spring IDE, not a replacement
§ Behind the scenes • Produces Java and AspectJ code • Command-line interface or IDE integrated
7 7
Spring Roo
Demo
8 8
SpringSource Tool Suite – a quick look
§ Eclipse-based full-featured IDE for Spring developers • Focused on coding productivity • Enhances the Java experience of Eclipse to Spring projects, including
• Content-assist, validation, quick-fixes, visualizations, navigation, etc.
• Integrates Spring Roo, tc Server, Maven, Groovy/Grails, Gradle • Direct Deployment to Cloud Foundry, incl. full debugging support
§ Behind the scenes • Compatible with Eclipse Indigo and Helios • “old style” desktop IDE
9 9
SpringSource Tool Suite
Demo
10 10
Comparison
§ Spring Roo / SpringSource Tool Suite • Expert Java developers • Code-centric
• Good at Java/Spring code • Poor support for UI development and JavaScript
§ WaveMaker • Non-programming experts
• Visual programming • Good for rapid web app development, web UIs and JavaScript
• Very poor Java experience
11 11
Combining the tools
The key is to combine the tools
Using WaveMaker for web UI and JavaScript
& Using Spring Roo & SpringSource Tool Suite for JVM-
centric back-end development
12 12
Combining the tools
Demo
13 13
Outlook 1/2
§ WaveMaker: • tooling for frond-end development • Modern web apps
• Based on JavaScript • Single page style architecture • Accessing RESTful APIs • (not focused on implementing services)
§ Spring Roo + SpringSource Tool Suite: • Tools for expert JVM developers • Mostly for back-end services
• JVM-based development • Spring-enabled, but not exclusively • Focused on code productivity
14 14
Outlook 2/2
§ Make it easy to use both tools together • Within the same team • For the same app or project
• No pain of importing/exporting stuff