Windows Application vs Web Application development

mickyjtwin picture mickyjtwin · Sep 29, 2009 · Viewed 22.1k times · Source

Just trying to get a more thorough understanding of the major differences between windows(desktop) application and web application development. All my knowledge and experience has been as a web application developer, with c# and the .net framework. I am interested to know if it's common for developers to be skilled in both areas, i.e. WPF(desktop) development.

Does windows application development follow different methodologies, testing methodologies etc? When I think of things like installing a windows app, and users who install applications to use, also thinking about how the software is updated, it seems that the processes involved in this type of development are alot more structured and have "less room for error".

Do you think that someone who has had no WPF experience, or windows app experience, but has a .net background, have enough knowledge to confidently design and develop a WPF application (as a team lead), or that if a project of that nature comes along, then someone who has that experience in delivering a WPF app shoudl be sought after?

Answer

Mantorok picture Mantorok · Oct 22, 2009

I've worked in both and in terms of richness and development time WinForms blows Web out of the water, especially since technologies like ClickOnce greatly reduce deployment headaches. With winforms you only have to code against the platform and not take into consideration a huge number of other factors.

The whole request/response is usually, IMO cumbersome and sometimes unreliable, not to mention the growing number of browsers to support, varying standards to development and the learning curve of the page lifecycle, oh and of course the increasing trend of advertising splashed all over the place.

However, what web apps have brought us is beyond what WinForms could hope to achieve, so although there's a learning curve and increased development time there are obvious rewards to reap.

We (and I imagine most organistions) tend to use windows applications for administration purposes where a rich user interface is desirable in the minimal amount of time, after all, why would you want to waste a web servers resources when there's probably 99% available CPU on each users PC...?