14

这不是一个纯粹的技术问题,但我相信答案将有助于 RIA 社区。

我们是一家致力于开发股票交易产品的软件开发公司。我们选择使用 Adob​​e Flex(2008 年年中)是因为它的浏览器渗透率和相对于 Silverlight 的成熟度。我们已经开发了这个系统,我们对此非常满意。

现在我们计划推出我们产品的第二个版本,它将具有更高级的用户界面——基本上是一个可停靠窗口和窗格的框架,如 Visual Studio 2005 及更高版本等。我们在互联网上搜索发现Adobe Flex 的 3rd 方组件市场仍然很小,但是对于 Microsoft 的 Silverlight,有许多先进的 3rd 方组件可用,例如数据网格、对接框架等。

我们什么时候可以在 Adob​​e Flex 中使用相同类型的组件?如果我们开发到新版本的 Silverlight,专家们会怎么想(假设我们必须从头开始开发所有东西,Adobe Flex 与 Silverlight 的专业知识目前不是问题)。

下一个版本的发布预计在 2010 年年中。对此的任何反馈都非常感谢。

4

13 回答 13

12

我可以从直接经验告诉您,Flex 是一个更高效的平台。我在一家大型 RIA 咨询公司工作,该咨询公司使用 Flex 和 Silverlight 构建大量应用程序,我们发现在 SL 中开发同等功能所需的时间比在 Flex 中长 10-20%。Flex 中的数据绑定支持比 SL 更容易使用。我还可以告诉你,一个有适当经验的 Flex 开发人员可以用几周的开发时间轻松地在 Flex 中构建一个 MDI 工具包。因此,我建议您考虑聘请经验丰富的 Flex 开发人员,而不是花钱购买 SL 组件。

SL 确实有一个很大的优势,因为 C# 可以在客户端和服务器上使用,并且业务逻辑可以在两个层中重用。这很重要,不应打折扣。ActionScript 没有服务器端对应物并且缺乏这种能力,尽管 Flex 确实可以很好地与许多不同的后端技术配合使用,尤其是使用 BlazeDS 的 Java。Silverlight 服务集成在 .NET 方面有多种选择(请参阅下面 Bart 的评论),而 Flex 可以在 RPC 和数据推送(消息传递)中使用非常高性能的 AMF。BlazeDS 是免费和开源的。

我还认为,仅根据 3rd 方组件的可用性来决定开发平台并不是一个好主意。撇开这一点不谈,MS 平台一直有大量的组件开发商店和各种各样的组件可供选择。即使在市场份额较小的情况下,SL 也可能会比 Flex 未来拥有更多的第三方组件选择。

最后,我认为 MS 不会很快放弃 Silverlight。他们正在积极开发 SL4 的新功能,Blend 工具为设计师/开发人员交互提供了一些创新,甚至 Adob​​e 都在努力与他们的新 Catalyst 工具相匹配。

如果您今天必须做出决定,我会说选择 Flex,特别是对于您不想因为用户不能或不会安装 SL 插件而失去用户的面向公众的应用程序。在 12 到 18 个月内,我相信 SL 会给 Flex 带来更大的收益,但我认为它还没有实现。

于 2009-06-15T00:57:10.150 回答
5

虽然我不能给你想要的答案,但我希望我能给你一些很好的问题和想法,也许在这个过程中对你有帮助:

City Coder:企业开发中的 Flex 3 与 Silverlight 3

Microsoft Silverlight 与 Adob​​e AIR/Flex 辩论

我个人认为,由于即将推出的 html 5.0 标准中的新功能,Adobe Flash 将在不久的将来失去大量用户群。此外,我更喜欢这些工具(Visual Studio)、插件和语言(C#)而不是 Adob​​e 等价物,我认为这些更优越。但是我必须强调这只是从我的角度来看.. :)

于 2009-06-14T08:50:53.593 回答
2

此线程中的一些人假设您无法使用 Visual Studio 开发基于 Flex 或 Flash 的项目。从 2010 年 8 月 30 日起,这不再适用。您可能想查看 Amethyst,它是一个 VS 可视化(拖放)Flash 平台 IDE,具有多进程调试器、IntelliSense 和重构: http: //www.sapphiresteel.com

最好的祝愿

于 2010-08-25T12:38:47.070 回答
1

需要考虑的一件事是微软对 Silverlight 的贡献。Silverlight 没有起飞。他们要坚持多久?如果下一版 Silverlight 没有获得显着的市场渗透,微软会继续支持它吗?

即使他们坚持使用它,即使它确实起飞了,他们是否会像他们对 Internet Explorer 所做的那样:将它开发成当时使用 IE6 可用的最棒的浏览器,然后滑行 5 年以上,然后成为开发者眼中的主要刺?

Silverlight 与 Windows 没有太大关系。使用 Silverlight 的人不会让微软赚很多钱。对于 MS 来说,推动 Silverlight 的商业案例并不特别引人注目。

Silverlight 不向用户提供 Flash 不提供的任何东西。推动 Silverlight 采用的是用户,直到有令人信服的理由让我将它安装在我的计算机上(顺便说一句,它不是),它才会停止。

Flex 是 Fl​​ash 的天然伴侣,Flash 是 Adob​​e 的旗舰产品之一。Adobe 不会放弃 Flex。即使他们这样做了,它也是完全开源的,而且即使 Adob​​e 明天坠入大海,Flex 开发也绝对可以继续进行。(不幸的是,Flash 运行时不是开源的,但它是一个非常好的多平台实现,主要是开放的 SWF 标准,开源实现正在取得进展)

我在 .NET/Flash 商店工作。我们使用 Flex 与 .NET 后端通信。让它们进行互操作可能会很痛苦(尽管并非不可能)。我喜欢.NET。能够用 C# 开发我们的前端真是太好了。我会喜欢它。但鉴于 MS 的技术游行,我们不愿意将农场押在 Silverlight 上。

于 2009-06-14T21:14:42.057 回答
1

实际上,我也是两者之间的刺。事实上,我仍然考虑使用 Flash,但有点取消它,因为那更多是用于动画而不是 RIA。使用 Flex,有 AIR 可以在桌面和 Web 中进行部署,虽然我没有尝试过,但不知道它使用起来有多容易。我也不确定 Silverlight 是否可以用作桌面应用程序?

比较 Flex 和 Silverlight,我认为我们不应仅仅根据现在更广泛使用的东西来判断。Silverlight 也许是件好事!

刚开始探索 2 并发现 Silverlight 的 XAML 标记比 Flex mxml 更直观。此外,Silverlight 将与 C# 集成,这与 LINQ 和所有功能一起变得更好。所以数据绑定,任何RIA的重要组成部分都比较好。对于 Flex,可以将 PHP 与 AMF 之类的东西联系起来,但从我所看到的情况来看似乎有点困难。那就是说我对两者都不太熟悉。

更新:当 Silverlight 关闭时,Flex 现在是开源的,对吗?所以Flex可以说用起来更便宜。

于 2009-06-14T15:18:31.790 回答
1

一字(或二字)-->“开源” 世界正在走向开源。想想安卓和苹果

您将如何满怀信心地在 Linux 平台上为客户运行应用程序。现在我不是 netflix 客户,因为没有“月光”支持。

我家里有三台电脑都在运行 Linux(不能花钱购买 Windoze 许可证)!

考虑目标市场(以及未来几年的市场)

于 2010-02-18T17:18:56.523 回答
1

我们对未来 RIA 技术的决定中最重要的事情之一是 RTL 支持(特别是阿拉伯语)。听到 Silverlight 3.0 仍然不支持阿拉伯语(RTL),我感到非常失望,另一方面,Adobe Flex 4 现在支持它。我不想再次应用我们使用的所有非标准技巧我们现有的应用程序版本(基于 Flex 3)。所以现在 Flex 中解决了一个问题,但仍然存在于 Silverlight 中......而且 Flex 中仍然没有对接框架,所以我猜它会陷入僵局.. :)。我会及时通知您我们研究的任何新发现...

于 2009-06-15T13:39:56.533 回答
0

如果是股票交易产品,它会实时传输股票价格吗?如果是这样,流式传输数据的成本会有所不同。

它们都支持某种数据推送(RTMP vs. Socket)和智能轮询(RTMPT/RTMPS vs. HttpDuplexPollingChannel)。

  • 基础设施成本:Flex 使用 LCDS/BlazeDS,而 Silverlight 使用 IIS。
  • 开发成本:RTMP/RTMPT/RTMPS 已经定义(并且不能更改),而您需要为套接字定义自己的协议(您需要自己处理安全和压缩)

从编程的角度来看,Silverlight 应该更好,因为 XAML 正在绘制接口,而 C# 更新 XAML 组件的状态。有很多 C# 开发人员和 Expression Studio 来创建 XAML 组件。

MXML 相对简单,您需要 Flash 来绘制精美的 UI。不过,您可以等待带有 FXG 支持的 Flex 4(测试版)。然后,它可能会更好地支持第三方组件。

于 2009-06-14T17:21:06.457 回答
0

如果您在这两种产品上都拥有专业知识很难说,从我这边来说,拥有像 Visual Studio 这样的 IDE 是一个加分项(我是一名 .net 开发人员),并且在服务器(服务)和客户端使用相同的语言,这就是让我感觉很舒服。

我会说...去进行概念验证,花一周时间,组建两个团队(大约相同级别),并在一周内检查(没有任何正式测试或正式设计)以在 Flex 和 SL 方面取得进展(对于他们可以利用所有试用版的第三方)。在那一周之后,检查他们走了多远以及他们的发现。

浪费一周时间?尝试将焦点作为最终应用程序的实时线框。

祝你好运布劳略

于 2009-06-14T19:16:09.987 回答
0

Flex 与浏览器更兼容,因为它运行在 Flash 之上。然而,Silverlight 需要下载,这对于代理或网络后面的用户来说可能是个问题(例如,在工作场所,您无法安装东西)。Flex 还具有比 Silverlight 更好的框架,因此您可以通过几次点击和击键来自定义组件。

我同意你的观点,VS 和 C# 比对应的 Flex(分别为 FB3 和 ActionScript)更成熟,但你很快就会习惯。

再说一次,我是一名 Flex 开发人员,而不是 Silverlight 开发人员,所以我的意见可能有些偏颇。然而,我确实选择了 Flex 而不是 Silverlight,因为我认为它更兼容(几乎每个人都有 Flash Player)并且比 Silverlight 有更好的支持,而且我到目前为止并不后悔我的决定。

于 2009-06-14T14:54:55.340 回答
0

还有弹性码头:http ://code.google.com/p/flexdock/

并且有可停靠的 flex:http ://code.google.com/p/dockableflex/

于 2011-08-06T05:39:03.950 回答
0

我认为我无法推测 Flex 何时或是否会有类似数量的 3rd 方组件。Telerik 和 DevExpress 等公司开发的许多 Silverlight 组件是现有 .NET 组件的移植或更新。您可能想要对为其他 Adob​​e 产品开发组件的公司进行调查,并在他们的论坛上询问他们是否计划发布 Flex 产品。除此之外,我所要做的就是今天可用的东西,听起来你已经对现有技术进行了研究。祝你好运!

于 2009-06-15T12:21:13.277 回答
0

我曾与 Flex 进行过一些合作,但更面向 .Net 我不能说 Flex 在开发业务应用程序方面可以接近 Silverlight。特别是 RIA Services V2 和所有 .Net 框架和 Visual Studio 的套装,一切都如此集成和专业。

我会考虑不使用 Silverlight 的唯一原因是该产品是否有公众受众,并且由于 Silverlight 的渗透率低,您将失去客户。

于 2011-07-08T01:49:44.133 回答