Adobe Flex 和 Microsoft Silverlight 之间的主要区别是什么?
我想开发一个网络应用程序来管理学校行政。但我不清楚,我应该使用哪种技术来创建富互联网应用程序。目前,开发公司正在使用ASP.net工具,并称这是一个Web应用程序。
但是,每次点击都会刷新页面。我不喜欢这一点。请建议,从哪里继续。
问候
皮尤什
I want 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
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
在普通的 ASP.NET 应用程序中,可以通过使用 Web 表单中的更新面板或使用 MVC 框架的更多 AJAX 功能来消除屏幕刷新。 (Codeplex 上的 Wikiplex 有一个疯狂的简单示例,我很喜欢他们的示例应用程序)。
然而,在 Silverlight 和 Flash 之间,Silverlight 被设计为 Web 应用程序,或者(有时)浏览器中的桌面应用程序,而 Flash 更多的是多媒体框架。
由于是学校管理,不需要随机安装 Silverlight,因此 Silverlight 和 JS/AJAX 都是不错的选择。两者都内置于 ASP.NET 库集中,并且在 Visual Studio 中具有良好的支持。 Flash 在这方面有点局外人。
总结一下:
一般来说 JavaScript/AJAX > Silverlight,但任何一个都很棒。
如果您完全反对任何屏幕刷新,我会更倾向于 Silverlight。
如果开发人员非常熟悉 Flash 并使用 Flash 与服务器进行通信,那么我会说这也是一种选择,但如果对这三个方面都不了解,我不会首先选择 Flash。
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.
对发起者的回应有点晚了。但我不同意我在这里读到的一些答案,而且由于谷歌在搜索结果中弹出了这个答案,我觉得有必要在这个板上调整我的答案。
首先,许多开发人员使用 ASP.NET 和 AJAX 创建应用程序是因为他们对此感到满意,而不是因为技术更好。多年来,需要一个人在 Adobe Flex 框架中开发的内容,需要许多开发人员在 AJAX 中创建。不再有 AJAX 与 Flex 之争,只有 Flex。谁想在 AJAX 中编写一百行代码来完成同样的事情,而在 Flex 中只需要 1 行代码。这就是为什么 AJAX 部署的成本总是更高的原因。
在 ASP.NET 上,你是对的。谁希望每次执行操作时都看到页面刷新?更不用说,没有浏览器完全遵循 HTML 实现,因此 .NET 应用程序在一个浏览器中的外观在另一个浏览器中看起来会有所不同,此外,还会在不同浏览器版本中出现差异。
大多数 ASP.NET,甚至 Coldfusion 应用程序在 HTML 中都很笨拙。因此,考虑到这一点,我所有的 GUI 开发都是在 Adobe Flex 中完成的。创建 Flash 文件后,它与 99% 的浏览器兼容(移动设备上的 safari 除外),并且支持所有操作系统。我会告诉您,您可以让 silverlight 在 Linux 中工作,同时在它在您的 Linux 操作系统上加载 50MB 的 MS 软件时享受乐趣。更不用说Flash拥有99%的市场渗透率。所以它已经预装在机器和浏览器上。
Plus flash 本身支持大多数图片格式和 SVG。您是否知道 Silverlight 变得臭名昭著,因为它们甚至不支持 GIF/BMP 格式?如果您使用 Silverlight,请忘记 SVG,因为它不支持它。什么是 SVG?查一下!这只是在 Flex 应用程序中创建您想要的任何图像的最有用的方法。例如,地图在 SVG 中很有用。它只是一个小文件。不是一个可怕的大文件。
Flex 语言更容易编程,并且有很多支持。以为我在开玩笑,你自己试试吧。您可以下载 Flex 的免费版本 30 天。请原谅我的无知,但我什至不知道从哪里开始加载 Silverlight。我有视觉工作室和所有这些,但我在尝试后放弃了。但那是发布一年后的事了,所以可能已经改变了。
坦率地说,如果您或开发人员买不起 Flex,请不要购买。相反,下载 eclipse,它是永久免费的。无论如何,Adobe Flex 只是 Adobe 定制的一个特殊迭代。因此,您可能不会在 Eclipse 中获得图表和其他一些组件,但大多数 GUI 组件都直接内置于 Eclipse 中。
ASP.NET 编程已经过时了。它很笨重,难以使用,并且可能会损坏文件。在 Flex/Eclipse 中根本不可能损坏您的项目文件,因为它们只是文本文件。那有多酷?
不要误会我的意思,我也在 ASP.NET 中编程。但我喜欢它用于应用程序服务器进程;你知道就像数据库和客户端之间的中间人一样。 SQL 服务器为 ASP 提供数据,而 ASP 使用 SOAP 为我的 Flex GUI 提供数据。最大的优点是,尽管我讨厌 Visual studio crystal reports,但它仍然比没有好得多。相信我,您想要一些报告功能,例如 CF Report Builder 或 crystal reports。有些人只是喜欢格式良好的 PDF,仅此而已。
我已经使用各种技术发布了数百个应用程序。现在这是我最喜欢的。但坦率地说,如果您是“功夫”大师,那么在任何地方都可以制作出好的 GUI。我想说的是,虽然与 .NET/Silverlight 相比,在 Flex 中进行编程更容易,但拥有一些疯狂 .NET 技能的人可能会让 Flex 应用程序相形见绌。但就目前情况而言,毫无疑问 Flex 是市场渗透率最高、灵活性和易用性更强的候选者。
祝大家好运...
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 确实为 AJAX 提供了一些特殊的功能,因此完全有可能在不离开 ASP.NET 的情况下消除页面加载。如果您离开 ASP.NET,选择是无穷无尽的:Java、Silverlight、JQuery、Flash 等等。
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 和 Flash 非常适合丰富的用户界面,但我认为它们不应该用于“整个”界面或应用程序。最好缩小这些部分的范围并确定它们需要多丰富,然后评估要使用哪种技术。如果您只想防止页面上与服务器的完整往返,AJAX 是一个不错的选择。我还推荐 Silverlight 而不是 Flex,因为您可能/已经拥有这些工具。
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.