开发在DESKTOP和BROWSER中运行的应用程序的最佳技术?

时间:2020-03-05 18:58:04  来源:igfitidea点击:

Microsoft WPF? Adobe AIR / Flex? Adobe Flash?卷曲编程语言?

AJAX如何适合?

给定一个用C ++ .NET编写的服务器。

解决方案

回答

使用WPF,我们可以构建桌面,然后将其几乎1:1移植到Silverlight并定位到Web

回答

那Silverlight呢?

当可以基于前端类型呈现UI层并且与业务模型没有紧密关系时,应用MVP模式的基于XAML的解决方案可能会非常好。

干杯!

回答

我记得曾经看到一个免费的C ++库,它为我们提供了基于Web的UI。
没有尝试过,也记不起它的名字了,但是如果我们想使用C ++,那就可以了。

也许我会选择Adobe的Air或者Google的Gear东西。
如果我们想做点事,可以在周末做。

回答

考虑使用Silverlight开发应用程序,并使用以下两种方法中的任一种来使同一Silverlight应用程序也运行在Desktop中。我承认这两个都是愚蠢的把戏,但是如果应用程序没有太多的层依赖关系,那将很有帮助。

1)http://jobijoy.blogspot.com/2008/09/desklighter-handy-tool-for-silverlight.html
2)http://geekswithblogs.net/lbugnion/archive/2008/04/24/silverlight-running-standalone-full-trust-applications.aspx

Microsoft将提供另一种名为Live Mesh的技术,该技术还将支持脱机和联机silverlight应用程序。

回答

我们创建了一个可在浏览器中或者作为独立应用程序进行3D可视化的应用程序。

该应用程序使用JavaScript(用于应用程序逻辑)和C ++(用于3D渲染)编写,并使用来自http://www.trolltech.com的Qt库。

在浏览器中运行时,该应用程序作为ActiveX控件(对于IE)和Netscape浏览器插件(对于Firefox,Mozilla,Netscape,Opera)包装在薄层中。 Qt会自动或者多或者少地自动包装该插件。

回答

两个主要选择是Silverlight / WPF和Flex / Air。

如果我们熟悉.NET框架,请使用第一个;如果我们更熟悉Flash / ECMA脚本,请使用后一个。

使用最好的工具完成工作。如果两种工具都相同,请使用受过较高培训的工具,或者最容易使用的工具。

回答

答案确实取决于应用程序实际做什么以及平台要求。

如果它是像gmail这样的常规网络应用程序,并且我们希望它可以在许多浏览器和平台上运行;那么我建议我们将HTML,CSS和GWT结合使用,因为这意味着应用程序代码全部为Java,非常易于重构和维护,并且有大量的Java程序员,而且Java的IDE很棒(蚀等)。

然后,我们可以在有意义的情况下(例如Google财务使用Flash制作交互式图表)使用Siverlight或者Flex之类的浏览器插件。

如果应用程序是高度图形化的,例如Visio类型的事物,或者需要嵌入Microsoft Office或者其他事物;我们可能想看一下Silverlight / Flex / AIR,特别是如果我们可以指定内部应用程序的浏览器版本和平台。

尽管对于客户端而言,并没有明确的答案(仅查看此线程上的评论:),但有很多选择(Java Applets / Swing / JavaFX,Ajax,GWT,Air / Flex,Silverlight / .Net等)都有很多优势和弱点。对于客户端和C ++服务器之间的通信,我的建议是将C ++应用程序公开为一组RESTful资源,然后在任何时间点,我们都可以轻松地用任何语言技术或者框架编写其他类型的客户端。

回答

创建一个DHTML / Ajax应用,并使用Google Gears保留数据,使其在脱机时仍能正常运行。