开发在DESKTOP和BROWSER中运行的应用程序的最佳技术?
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保留数据,使其在脱机时仍能正常运行。