Without a list of requirements it's hard to say which is the best approach for you.
Flash is fine for graphical presentation, but is not so good beyond
that. It can do more but doing so will require that you code a
separate server application for Flash to talk to. The interface
between Flash and the browser itself (i.e. DHTML interface) is limited
and not cross-platform friendly. You get around this by having Flash
talk directly to your server, but then you end up writing an entire
application devoted to retrieving and returning XML documents to the
Flash client. Eventually this can become bloated. Since Flash cannot
directly access OS resources, it will be limited to browser
interaction only. For example, caching data locally, access OS
libraries (say, for encryption) or formatting large print documents
will be out of the question as this would require Flash to work
outside its sandbox.
Dot Net is great if you need a suite of ready-made, robust APIs on the
client and you don't mind having a high barrier to entry for some of
your users. It can be nice to have Crystal, XML, data storage and
retrieval, and a multitude of other components already ready to go on
the client. It will make things easier for your developers but some
users with older computers may have issues. About all you will be
able to tell them is get a newer, better computer with a newer, better
version of Windows. If your client base is likely to be business
people with fairly recent computers, this is likely a non-issue,
especially since the Dot Net framework is part of XP and gets
installed by Windows update sooner or later unless you tell it not to.
Java is not my tool but as far as I understand it, it falls somewhere
between the two. It is perhaps better at running cross-platform but
will not provide as robust a set of APIs as Dot Net. If your demands
are high enough on the users' workstations, then Java will start to
become much more work for your developers and you will end up dealing
with resource and compatibility issues on the client anyway.
I'd sum it all up by saying if you feel that you only need a few
graphical whiz-bangs, Flash is fine. The first time you decide to
print or cache data locally you'll pull your hair out for choosing
Flash. If you feel your features are pretty well set and you already
have some code in Java, that will probably be a good choice. If the
application will grow over the coming years and may need to harness as
yet unknown resources, you may find that Java keeps you working to get
to each new level while Dot Net is already geared up to go as you put
new tasks to it.
Good luck with your project. |