I want 开发者_StackOverflow中文版to develop a web Application to manage school administration. But I am not clear, which technology should I use to create Rich Internet Application. At present, develeopment company is going with ASP.net tools and say this is a web app.
However, there is page refresh on every click. Which I don't like. Please suggest, where to proceed.
Regards
Piyush
In a plain ol ASP.NET application, the screen refresh can be eliminated by using update panels in webforms, or by using more of the AJAX capabilities of the MVC Framework. (Wikiplex on Codeplex has a crazy simple example of this that I love in their example application).
Between Silverlight and Flash, however, Silverlight is designed to be a Web Application, or (at times) a desktop application in a Browser, while Flash is more of a multimedia framework.
Since it is school administration, which doesn't require random people to have Silverlight installed, Silverlight and JS/AJAX are both good options. Both are built into the ASP.NET set of libraries, and have good support in Visual Studio. Flash is a bit of an outsider in this regard.
So to sum up:
In general JavaScript/AJAX > Silverlight but either would be great.
If you are totally against any screen refresh, I'd lean more towards Silverlight.
If the developers are very familiar with Flash and communicating with the server with Flash, then I'd say it is also an option, but with no knowledge on all three and I'd not pick Flash first.
It's a little late for a response to the initiator. But I didn't agree with some of the answers I read here, and since google is popping this up in the search returns I felt compelled to align my answer on this board.
First off, a lot of developers create applications in ASP.NET and AJAX because they are comfortable with it not because the technology is better. For years, what it took one person to develop in the Adobe Flex framework, took many developers to create in AJAX. There is no more AJAX versus Flex, there's just Flex. Who wants to write a hundred lines of code in AJAX to do the same thing it takes 1 line of code in Flex. That's why the cost with an AJAX deployment was always more expensive.
On ASP.NET, you're right. Who wants to see the page refresh every time you perform an action? Not to mention, no browser follows the HTML implementations exactly, so how .NET app looks in 1 browser would look different in another browser, in addition to differences witnessed with the various browser versions.
Most ASP.NET, heck even Coldfusion Applications are clunky in HTML. So with that in mind all of my gui development is done in Adobe Flex. When a flash file is created, it compatible with 99% of the browsers (safari on mobile devices excluded), and all of the Operating Systems are supported. I'll tell you what, you can get silverlight to work in linux but have fun while it loads 50MB of MS software on your Linux OS. Not to mention Flash has a 99% market penetration. So it's already preloaded on machines and browsers.
Plus flash supports most picture formats and SVG natively. Did you know Silverlight became notorious because they don't support even a GIF/BMP formats? Forget SVG if you're using Silverlight because it doesn't support it. What's SVG? Look it up! It's only the most useful way to create any image you want right in a flex app. For instance maps are useful in SVG. AND its just a small file. Not a horrendous large file.
Language, Flex is just easier to program in and there's a lot of support for it. Think I'm kidding, try for yourself. You can download a Free version of flex for 30 days. Forgive my ignorance but I don't even know where to begin on loading Silverlight. I've got visual studio and all that but I gave up after trying. But that was 1 year after it's release so it may have changed.
And frankly, if you or a developer can't afford flex, DON'T BUY IT. Instead, download eclipse, which is free forever. Adobe Flex is only a special iteration customized by Adobe anyway. So you probably won't get charting and some other components in eclipse, but most of the GUI components are built right into Eclipse.
Programming ASP.NET is just old hat. It's clunky, difficult to work with and it's possible to corrupt the files. It's not possible at all to corrupt your project files in Flex/Eclipse because they are just TEXT files. How cool is that?
Don't get me wrong, I program in ASP.NET too. But I like it for Application server processes; you know like the middleman between database and client. SQL server feeds ASP, and ASP feeds my Flex GUI using SOAP. Big plus is even though I hate Visual studio crystal reports, it's still way better than nothing. Believe me you want to have some reporting possibilities like CF Report Builder or crystal reports. Some people just like a nicely formatted PDF and that's all there is to it.
I've released hundreds of applications using various technologies. Right now this is my favorite. But frankly, a good GUI can be done anywhere if you are a 'kung fu' master. I'm saying that although it's easier out of the gates to program in Flex compared to .NET/Silverlight, someone with some mad .NET skills can put a Flex app to shame. But as it stands right now, there is no argument that Flex is the stronger candidate with the most market penetration, flexibility, and ease of use.
Good luck all...
ASP.NET does provide some special sauce for AJAX, so it's entirely possible to eliminate the page load without leaving ASP.NET. If you leave ASP.NET, the options are endless: Java, Silverlight, JQuery, Flash, etc. ad infinitum.
Silverlight and Flash are great for richer user interfaces, however I dont think they should be used for the "whole" interface or application. Its best to narrow down these parts and decide how rich these need to be, then evaluate which technology to use. If you just want to prevent full round trips to the server on a page, AJAX is a good option. I would also recommend Silverlight over Flex, since you probably/already have the tools.
精彩评论