I am about to start writing an application that will monitor the locations of our golf carts, how this works is when a cart gets close to a hole or other locations on our course it will update our database with it's location. once the database is updated the change will be sent to the clients screen showing the cart in it's new location "The clients display is graphical showing a map on the course and the carts location on the course". Please keep in mind that this app will also allow the user to assign available technicians to work on carts needing maintenance and it will keep track of maintenance schedules for the carts.
Some fact:
* This app will run on our companies network only
* All client machines are running XP possibly moving to Vista in the next year or so
* Framework 2.0 is installed on all client machines
* Possible 200 clients around the system "Nation wide"
Questions:
* Win App Or Web App and why
* If Win App will there be any major bandwidth draws on the network
* If Web App what effect would it have on the server and bandwidth
* If Web App would I be backing myself into a corner on future enhancements due to web app limitations
* When the update came in would the web app flicker when it refreshed
In advance thank you very much for your input.
SEA
I do mostly web stuff so I'm no expert on win apps but I'll point out a few things:
1. One of the biggest advantages to web is going to be that you don't need to install the app everywhere you want to use it. Anyone who needs access just fires up the browser and brings it up. If you're looking at 200 clients nation wide installing the app on them all and later updating it as new features are added could be a pretty big undertaking.
2. If you do a web app it isn't going to be able to get updates from the server as carts move about. Your web app will have to, at some interval, make requests back to the server to get the positions of the carts. So with web you're always pulling the locations from the server with win app you could potentially push the updated locations to the clients as need be.
3. As for the flickering question if you post the page back to get updates then you'll certainly get flicker. If you use ajax from the web app to get the updated positions and move the carts accordingly it will be much smoother. Keeping in mind that in the ajax case the web page is going to be updated with javascript if there is a lot of movement it will not look as smooth as a win app would.
4. Would you back yourself into a corner due to web app limitations? Depends on what you might want to do.You won't be doing high end graphics on a web app if that is what you want to do and there are some things that are tougher to do in a web app because of the stateless nature and the need to work within the browser's DOM to make modifications to the display but a lot of things that used to be fairly impossible with web apps is now possible thanks to ajax and dhtml and javascript.
Well that doesn't answer your question but provides some food for thought.
Just one note .. some more food for the same thought
Re. the app "install everywhere..", .net comes with ClickOnce installations that would pretty much take care of updates of an installed app automatically, transparent, getting only the assemblies that are newer, etc. That simplifies a lot the maintenance, you just compile a latest version of the app and the ClickOnce mechanisms make it as such as the client checks and gets the latest version next time it runs.
From msdn site:
"ClickOnce is a new application deployment technology that makes deploying a Windows Forms based application as easy as deploying a web application. With ClickOnce running a Windows Forms application is as simple as clicking a link in a web page. For administrators, deploying or updating an application is simply a matter of updating files on a server; no need to individually touch every client."
Full msdn help on this topic herehttp://msdn2.microsoft.com/en-us/netframework/aa497348.aspx
/Lucian
0 comments:
Post a Comment