Anyone out there with first hand experience with vaadinm (vaadin.com) framework ? Could you please provide your experience and perception about it.
- Posted by: Anil Samuel
- Posted on: September 12 2011 22:38 EDT
- Easy to get started, but has a few potential pitfalls by Pete Capra on September 13 2011 04:17 EDT
I recently had the opportunity to use Vaadin in my workplace and was part of a team to evaluate it's suitabilty for our project. I'll comment on our experiences but as with anything YMMV.
We initially chose Vaadin as a framework to implement an internal project that was only going to be used by staff from within our network so we could very much control the environment (OS, browser, etc). We were prepared to give up a little control in favour of using a framework that would let focus more on the problem domain and less on HTML, CSS and JS.
The things we were impressed by:
- Very fast to get up and moving with visible progress
- Self explanatory components and usage for those familiar with UI development
- Slick looking components that require little to no tweaking to get right
- Nice debugging tool for picking up component issues
The things that proved troublesome for us:
- HTML generated was very verbose. We were creating a fairly simple layout and it generated up to 100 nested divs! When creating layouts Vaadin will use 3 separate div tags for horizontal or vertical layouts. This slowed down rendering dramatically. There are some more lightweight components you can use but for us it was still prohibitive. Vaadin uses AJAX for interactions between the UI and model so components are redrawn on the fly. With this excessive HTML a lot of our interactions were slowed down a lot.
- No mature testing framework. We tried a few different options for integration and unit testing but found nothing that was suitable for us. There is a proprietry framework (TestBench) but it costs $1200 USD a pop so that was also prohibitive.
In the end, for us, the cons outweighed the pros so we opted for a framework that gave us a little more control, Apache Wicket. We were able to successfully reproduce the work we had already done in Vaadin in Wicket in a few days and haven't looked back. Wicket requires you to do more HTML and CSS but it gave us the control we needed to generate lightweight HTML.
I can definitely see a place for Vaadin and where it would be useful. If you are creating UIs that don't need to be pixel-perfect and aren't creating really large UIs where potentially lots of HTML tags will be created then I'd definitely recommend having a look.
Hope this was helpful for you!