views:

69

answers:

3

Sometimes it seems like some architectural techniques are not for the Web application I am building and then I just go and code =(, Though I really want to make a habit to architect system before moving to the code, as when I just code I endup writing some useless components which then I rewrite =(,

So can you just point out some differences between web apps and desktop ones ?

+1  A: 

The most common factor while developing your application lies in its functionality. The important points to focus are:

  1. Development Scale
  2. Functionality
  3. User Interface
  4. Dependencies Required

While working on any of the Application doesn't limits you to add functionality to the same. For a second thought, if you need to compare them, here is my go on it:

  1. Accessibility - Web applications can be easily accessed from any computer or location that has Internet access. Desktop applications need to be individually installed on each computer, while web applications require a single installation.

  2. Cost - Over the life of the software use, web applications are typically significantly more expensive over time. Desktop applications are purchased outright and rarely is their a recurring fee for the software use. Some desktop applications do have maintenance fees or fee based upgrades associated with them.

  3. Performance - Web applications that rely on the Internet to transfer data rather than a computer's local hard drive, may operate slower. The speed may also vary based on number of users accessing the application.

  4. Backups & Ownership - Regardless of the platform, companies need to be sure that their data is appropriately backed up. When using a web application that are hosted by a third party, companies should clearly determine who owns the data housed in the application, and be sure that privacy policies prevent that data from being used by the web host.


Ultimately the accessibility of web based applications make them very desirable. Web applications have some fundamental limitations in their functionality, and are better suited for specific tasks. Understanding the pro's and con's to each business model, will help users determine whether a desktop application or web application will better suit the users needs.

Mr.Expert
+4  A: 

If there is only one thing you should always be aware of while developing web applications I'd say it is: "HTTP is a stateless protocol". You have to take this into account for nearly all "architectural" decisions (from user interface down to scaling).

sbange
+2  A: 
Owen S.