什么是更好的平台/语言,用于开发可以离线运行的Windows /桌面应用程序(有时)? .NET(C#,ASP)或Java或任何其他开发工具?此应用程序需要将数据存储到数据库(涉及某些GIS),然后在非工作时间或由用户或事件启动时或在线时与主服务器(SQL / Oracle)同步两种方式?此外,推荐的工具/ IDE应该允许我们将来将此桌面应用程序作为基于Web的应用程序迁移到企业服务器,而当我们的所有远程站点/用户都可以访问Internet / nw时,可以减少痛苦或重新工作。任何意见/建议表示赞赏。
答案 0 :(得分:6)
如果您严格执行Windows桌面应用程序开发,C#或VB.NET将是一个很好的选择。 .NET开发人员有大量文档。虽然该框架可以从Microsoft免费下载,但是没有IDE,任何认真的工作都是繁琐乏味的。
如果您需要在Microsoft Windows以外的多个操作系统上支持您的应用程序的潜力,那么我认为可能值得研究Java。
对于Web解决方案,在.NET中,您拥有ASP.NET,Java,您拥有JSP和Tomcat。
答案 1 :(得分:2)
您可以尝试使用Adobe AIR。它似乎可以满足您的大多数桌面需求,并且应该最容易迁移到Web应用程序(Flex)。
答案 2 :(得分:1)
答案 3 :(得分:1)
由于您在某些时候提到了对此应用程序进行Web启用的愿望,因此我将介绍Silverlight。 Silverlight 3中引入了浏览器外功能。这意味着应用程序可以直接在桌面上运行,并且Internet连接是可选的。但是,当互联网连接可用时,它内置支持自动更新。
现在在Silverlight 4中,可以运行具有提升信任度的浏览器外Silverlight应用程序。 Silverlight 4还最终推出了诸如右键单击支持,剪贴板访问,全屏模式下的全键盘支持等等。因此,如果您刚刚开始开发,我肯定会使用版本4.
您必须与许多数据库操作的WCF服务进行通信。但是使用Silverlight可以让你构建一些可以在桌面和网络上运行的东西,而无需管理两个系统。
答案 4 :(得分:0)
在您开发桌面应用程序之后,基于网络是一个非常糟糕的主意。桌面应用程序没有理由不能使用Internet连接,并且可以从服务器进行更新。
答案 5 :(得分:0)
你可以尝试Delphi。它是一种快速的应用程序开发工具。非常不同,但使用起来非常快。非常适合Oracle集成。数据同步可能需要自定义,除非您使用的是Sybase SQL Anywhere。