I've build fairly substantial applications with .NET - and I will have to
disagree with some of the points below. True, .NET doesn't have a Hibernate
like persistence layer, but the reality is that while java produced a
zillion persistence options for the "Enterprise" app, ADO.NET's simple
in-memory DataTable approach will suffice for 99% of the apps out there.
That said, .NET 2.0 will change quite a few things ...

The distinction between .NET and Tapestry is this: (a) State persistence in
the client using the view-state, (b) GUI design tool, components that have a
distince "design time" and "run time" mode of operation (components have an
interface that allow it to interact with VS .NET for design time
manipulation); (c) Thriving commercial component market with some really
slick components.

Of course the availability of tons of books/literature/websites also makes
the learning curve a lot easier. That said, Tapestry will run on Linux, .NET
requires a licensed OS.s

-----Original Message-----
From: Patrick Casey [mailto:[EMAIL PROTECTED]
Sent: Thursday, May 12, 2005 3:02 AM
To: 'Tapestry users'
Subject: RE: Tapestry's Simplicity Blues


<snip>
> Thing is that I never worked with JSF or APS.NET to judge Tapestry with
> other component web frameworks. From what I've read around, I sincerely
> doubt that JSF is simplier, but I would really like some expeienced
> ASP.NET
> developer to say his opinion.

I wouldn't necessarily call myself a .NET expert, but I did prototype a
system in in a few months ago (I decided not to go down that road so I'm
back in java). The short version of my experience.

.NET does make the simple stuff simple. If you want to build a quick and
dirty CRUD app with only a few forms, .NET is way faster than anything I've
yet found in the java world. Between the WYSIWIG form editor, the component
library, and the magic "don't worry about it, it just works" persistence
strategy they have, it's really easy to do easy stuff.

But, and here's where .NET and I parted ways, it doesn't have a lot of
features to make the *hard* stuff simple. Want an abstract object
persistence layer like Hibernate? So sorry, roll your own, or use a thin
resultset wrapper like ADO. Want to use lots of generic forms and runtime
data binding? Sorry, it's a design time framework. Sure you *can* bind at
runtime, but if you do you can't use any of the cool features that made the
easy stuff easy.

All in all, I felt like it was something of a trap for serious development
work. It makes banging together a sketchy prototype really easy, but then
you end up not being able to use any of those easy features on the real
project.

If somebody would marry the easy-stuff-is-easy part of .NET with the
hard-stuff-is-possible part of hibernate/java/tapestry, I'd switch to it in
a heartbeat. To date though, nobody has pulled it off. If I were a gambling
man, I'd bet on the Eclipse group making a decent go at it in the next
couple of years.

I'm not all that confident though that the current stable of open source
projects out there (choose your poison) are going to get there though. In my
experience they're usually written by developers who got fed up with crap
like .NET and decided to tackle the interesting "hard stuff" problems
instead of the tedious "easy stuff" issues. So we have at least a half dozen
web application frameworks out there, but nobody has yet written a decent
WYSYWIG gui for any of them (if I'm wrong here I'm 100% certain I'll get 20
emails about it :).

In any event, the short version is Tapestry/Hibernate/Java is way more
*powerful* than .NET for the kind of work I do. It's not, however, easier.

--- Pat



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to