views:

34

answers:

3

I should develop a online search application which connects to an external database in a different server. This application can be a web application one (running on a Internet browsers basically) or a normal standard window application (with its own GUI). Does one of the two approaches have more benefits of the other? If so, which one?

GUYS THANKS A LOT FOR THE HELP

+1  A: 

There are advantages and drawbacks with each solution, of course ; here are a couple of thoughts :

  • Web applications are easy to update : you have control over the server, and you deploy whenever you want
  • Web applications pretty much garantee that all users are using the same version of your application : the current one (i.e. no-one is running an old, non-updated version)
  • Desktop application can use more memrory and CPU : the limit is on the user's computer (and there is one computer per user), and not on the server (shared by several users)
  • Desktop applications only work on systems you developped them for (i.e. windows/Linux/Mac 32/64 bits)


In your case, if most of the work is done by the external database, I suppose the web/desktop application would only be a front-end that sends queries and display data in return ?

If so, you probably don't need much power on the application-side : almost everything will be on the database side, which is necessarily shared amongst users.

In such a case, I would probably go for a web-application : easier to update, works on all platforms, doesn't require much server-power.

(Disclaimer : I am a web-developper -- so might be a bit biased ^^ )

Pascal MARTIN
The point about desktop application can use more Memory and CPU, is totally up to the programmer and how he creates the software. Depends what he includes, but as a rule of thumb I would argue the opposite, as you don't have the overhead of the browser.
LnDCobra
What I actually meant is that on a desktop computer with 2 GB of RAM, if an application uses 100MB, it's not that bad ;;; on a server with 4GB RAM and 50 users, if each user requires 100MB of RAM, your server will die.
Pascal MARTIN
A: 

Both have advantages and disadvantages.

But a online search application I would strongly suggest a web application due to the following reasons:

  • Can be accessed from anywhere in the world (either directly or through VPN) through a web browser( which is installed almost on every single computer out there)
  • Does not need any permissions from the users side, e.g. administrative permissions/networking access. A web browser will have these by default and run over HTTP which is allowed through most firewalls.
  • Can be easily updated, update the website and the changes will be made next time t he user goes on the website, with a desktop application you have to script an update feature, or tell user to download new version.
  • Works on all platforms, no need to worry about cross-platform coding.
LnDCobra
A: 

I agree with Pascal MARTIN. To add a couple of things: - Desktop apps could perform better as far as UI goes (although with RIA platforms -GWT, Silverlight, Flex- this might not be so true anymore), or allow you to use more complex widgets which might be harder to implement in a web app.

Ricardo Villamil