Our company started with Tapestry 5 last year. Early this year we had
the chance for the team to try Wicket after getting frustrated with
Tapestry.
I wrote a small comment here about it:
http://www.theserverside.com/news/thread.tss?thread_id=50634#268364
Tapestry 5 seemed to be fast due to the live class reloading. So you
would code a bit, check the page in your browser, and then code a bit
more. But as soon as you hit a problem it seemed to take hours to get
around it. We had to write lots of custom ajax and javascript for all
sorts of simple cases. This left us with pages that generally worked
but without any tests to confirm behaviour. It think the java classes
looked ugly too, with various public getters for anything that should
appear on the page. It made it hard to estimate how long a page would
take because we would hit tricky problems quite often.
When we changed to Wicket, the speed tended to be the same at first
which was surprising. We decided to do Test Driven Development because
we could use the WicketTester to help in development of our
pages/components. We finished the 2 month project in the same time as
we estimated for doing it in Tapestry 5, but were were also writing unit
tests and 3/4 of the team were learning Wicket. Also our estimates for
doing the project in Tapestry involved sharing components from our
existing application.
We are much faster now, our estimates are very accurate now, we have
lots of tests so we are happy to refactor/maintain code. The style of
coding is quite different now. We set up the basic html + wicket class,
write a test to make sure the page renders, then start adding more tests
and components. After an hour of writing tests/code we might check it
once in the browser. It gives you a great feeling to spend that much
time in the IDE, getting lots of green bars as the tests pass then
launch it in the browser and it just works.
We are now rewriting the existing application in Wicket, page by page,
moving components+tests we wrote into a shared module so we can use them
in both projects. Re-use yay!
So I guess we could say our development time might be 1.5 - 2 times
faster. Our maintenance is faster again, maybe 4-6 times, because we
can just write a new test to show the behaviour we want, fix the code
and we can be confident we haven't broken anything else. With our old
application we would have to test the page/ajax/javascript by hand.
Martin Sachs wrote:
I'm looking for a little comparison of the development-time for Applications
in Wicket against other Technologies.
I think the development with Wicket is two times faster than Struts. But
what are your experiences on JSF, Rails/Grails, SpringMVC/SpringWebFlow.
Anyone you know the development-time from experience ?
(P.S.: The applications must use AJAX and many custom components or tags in
JSP, not just a hello world sample)
--
Jason Lea
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]