阿贾克斯, FlexSilverlight 有几种方法可以让更多的互动式网络应用程序。什么样的因素,你会考虑在决定使用哪一个新的网络应用程序?

不他们中的任何一个提供更好的跨平台的兼容性、性能、开发工具,或社会的支持?

有帮助吗?

解决方案

这里有一个简明扼要的每个区域(与很多有用的链接):

跨平台兼容性

阿贾克斯 工作 任何现代的浏览器 可以运行 JavaScript.Flex需要闪光或其他任何可以处理 SWFs但是,一旦安装,这是一个 总的自由 尽的兼容性。统 棘手的误解 所以仔细考虑你的 用户群 之前说这MS进军的丰富的网络应用程序的军备竞赛。还记得统仍处于测试阶段,因此它可以成为更广泛的应用和安装在未来,因为它是发展。

性能

我担心的太多声明有关的性能,因为这真的取决于有多少你们愿意以优化和确切性质的应用程序。此外,一些技术堆都是永远不会是速度非常快。 一些人在那里已经进行比较, 但再一次, 它取决于很多因素 (即使浏览器的版本,你正测试!).这可能是最好的选择基于其它因素和优化一旦你已经开始发展。

开发工具

有的"黄金标准"开发工具用于每个三:

  • 阿贾克斯已经基本上无限的选择,这取决于你的余技术和建筑的选择。大问题,你们实际上面临的是图书馆为依据,提出一个漂亮的以及通过回答的东西喜欢 网络的工具包.当你到它的权利,它只是XML和JavaScript,对吗?

  • Flex是从Adobe,就像闪发展,你最好坚持 他们本土的工具 因为-好-他们正在做的标准,因为他们走。

  • 微软已经定位,Microsoft表达的混合版本2.0和2.5用于设计用户界面Silverlight1.0和2应用的分别。Visual Studio2008年可用于开发和调试新,请参见(从维基百科).

社区支持

有两种官方和非官方的社会、企业和开放源支持所有三个选项。无论你已经在综合与和它让你觉得大多数在家是非常个人的事,但我会提供这样的建议:坚持你知道什么。如果你是一个MS开发人员和有MSDN作为你的主页上,你可能会觉得 Silverlight文件 和论坛是真的很有帮助。Flex有一个非常类似的事例;该论坛是很好的如果你和一个闪人了,你会在家里与他们的 文档用户社区.

另一方面,Ajax基本上是所有的地方,因为你可以实现这么多不同的方式和方法的使用如此多的广泛各种图书馆。每个图书馆可以拥有它自己的论坛访问和邮件列表潜伏在所有的答案。

再一次,所有三个有企业巨头努力促进他们的社区,并得到尽可能最好的支持,以开发商会给他们更大的市场份额的未来。

其他提示

选择应该在我看来是主要基于本质上的应用程序将建设(例如,如果你需要操纵向量图形、阿贾克斯是相当多的出),但这里有一些一般性的准则:

无处不在

  1. 阿贾克斯--支持通过所有现代化的浏览器的跨平台
  2. Flex--Runtime(Flash Player)具有非常广泛安装基本的Windows,Mac OS,Linux。Linux版本是有点越野车的最后一次我检查,不过
  3. Silverlight--运行时具有相当低的安装基地(没有Linux的支持)的时刻

选择的程序语言

(Unordeded因为主观性的,但注意Silverlight提供最多的选择。还注意到,现有的语言的经验,开发商在你的团队应该以考虑。)

  • Silverlight:任。净语(C#、Visual Basic,IronPython(?), 如何从语言特性(?)) (及XAML UI定义)
  • Ajax:JavaScript(和XHTML的用户界面的定义)
  • Flex:ActionScript3(和单的用户界面的定义)

API稳定性和兼容性

  1. Flex--运行时相同的跨平台和浏览器,更成熟和稳定的时刻,比Silverlight
  2. Silverlight--运行时相同的跨平台和浏览器,不成熟的比Flex/Flash、v2。0仍处于测试阶段
  3. 阿贾克斯--的兼容性问题跨浏览器(可以减轻,通过Ajax图书馆,虽然)

Web/浏览器集成

  1. 阿贾克斯--内容是当地的内部浏览器,根据标准:可检索的通过浏览和搜索引擎的网虫,不受任何标准UI做法的浏览器和操作系统已经建立了
  2. Flex。--的内容不当地浏览器(即运行在其自己的小"沙盒/矩形"):不一定受建立UI做法给予平台

开发工具

  1. 阿贾克斯...你喜欢的代码编辑的浏览器和调试工具包的浏览器
  2. Flex--Flex SDK available for Windows,Mac OS和Linux的自由和可以使用你最喜欢的代码编辑器。一个命令行程序包括在内,但Adobe提供探查是仅适用于商业Flex生成器IDE
  3. Silverlight-- 据我所知, ,SDK available for Windows免费的并可以用你的最爱。净发展的工具

该网络的运行时间就像挠。所有提供的诱人的事情,但与两个大的费用:

  • 他们运行只有在一个矩形的网页,并且不与正常的网络部件
  • 他们是唯一可用的人,插在安装

甚至几乎无处不在的闪光的并不是安装在每一个网络浏览器,因此通过选择使用一个插件在运行时你不包括的一部分你的观众。

与此相反,JavaScript(或Ajax)提供上几乎每一浏览器,并且互动更好地与正常的网页,但是一个更加原始的和限制的语言。使用它的复杂的动画可能是棘手的,你会需要测试你的应用在多个版本在多个平台,以确保它的工作。

跨平台的兼容性不是问题,因此问题是这个: 你会获得更多的功能的一个插件库比你将失去在观众中排除?

我自己回答迄今为止一直JavaScript/阿贾克斯,但是我会重新评估,在任何新的项目。

什么是你的观众:公共网站或内联网的企业应用程序?通过价格不相关的,如果你有一个控的听众,他们会安装的是什么运行所需的应用程序。然而,如果您需要尽可能多的受众,以使你的网的启动取得成功,那么它可能是至关重要的。

你的目标是什么?建立一些最低成本?学习新技术吗?

你可以利用现有的技能吗?如果你已经知道了。净然后Silverlight得到提升。学习Flex可能是有趣和有用的,但是它更有用的比你更多的经验。净技术?记得要考虑的机会成本的学习全新的东西。

我没有看到一个明确的技术的获得者在这一点上,可能不会有一个很长一段时间,所以选择将下降到相当主观的因素。

其他比我已经在这里提及,另一个巨大的事情要考虑的是什么你的UI要。

如果你要被使用了大量的先进的用户界面控喜欢树、清单、卡的控制,等等然后考虑以下几点:

  • JavaScript/HTML-没有支持任何超出东西的基本下降框,按钮,并文本的领域。如果你想要的东西就像一棵树控制或标签的控制,那么你就必须滚你自己或者找到一个第三方图书馆。

  • Adobe ActionScript地支持一系列广泛的先进的用户界面控

  • Silverlight-1.0了非常有限的用户界面控,但2.0将增加更多我确信,我们将继续看到控加入未来的版本。
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top