2010-02-26 111 views
0

我应该开发一个在线搜索应用程序,它连接到不同服务器中的外部数据库。此应用程序可以是一个Web应用程序(基本上运行在Internet浏览器上)或一个普通的标准窗口应用程序(具有自己的GUI)。两种方法中的一种有更多的好处吗?如果是这样,哪一个?互联网应用程序或窗口应用程序?

GUYS感谢您的帮助很多

回答

1

有与每个溶液当然,优点和缺点;这里有一对夫妇的想法:

  • Web应用程序容易更新:您对服务器的控制,并在部署时,你想要所有用户都使用相同版本的
  • Web应用程序几乎garantee您的应用程序:当前的一个(即没有人正在运行一个旧的,未更新的版本)
  • 桌面应用程序可以使用更多的记忆和CPU:限制在用户的计算机上(并且每台计算机有一台用户),而不是在服务器上(由多个用户共享)
  • 桌面应用程序仅在您为其开发的系统上工作(即,在Windows/Linux的/ Mac的32/64位)


在你的情况,如果大部分工作是由外部数据库中完成,我想网络/桌面应用程序就只能是前端,可以发送查询并显示数据作为回报?

如果是这样,你可能不需要太多的应用程序的权力:几乎所有的东西都在数据库端,这必然在用户之间共享。

在这种情况下,我可能会去找一个网络应用程序:更容易更新,适用于所有平台,不需要太多的服务器功能。

(声明:我是一个网络developper - 所以可能有失偏颇^^)

+0

关于桌面应用程序可以使用更多的内存和CPU,完全取决于程序员以及他如何创建软件。取决于他所包含的内容,但作为一个经验法则,我认为是相反的,因为你没有浏览器的开销。 – 2010-02-26 17:07:03

+0

我的意思是,在一台配备2 GB RAM的台式电脑上,如果一个应用程序使用100MB,那并不是那么糟糕;在具有4GB RAM和50个用户的服务器上,如果每个用户需要100MB RAM,则服务器将会死亡。 – 2010-02-26 17:09:10

0

两者都有优点和缺点。

但由于以下原因,在网上搜索应用程序,我会强烈建议Web应用程序:

  • 可以从世界上任何地方(无论是直接或通过VPN)通过Web浏览器来访问(这是几乎安装在那里的每台计算机上)
  • 不需要用户方的任何许可,例如管理权限/网络访问权限。 Web浏览器默认具有这些功能,并通过大多数防火墙允许的HTTP运行。
  • 可以轻松更新,更新网站,并在用户下次进入网站时进行更改,使用桌面应用程序必须脚本更新功能,或告诉用户下载新版本。
  • 适用于所有平台,无需担心跨平台编码。
0

我同意Pascal MARTIN。添加一些东西: - 桌面应用程序在UI上可能表现更好(尽管使用RIA平台--GWT,Silverlight,Flex--这可能不再那么真实),或者允许您使用更复杂的小部件更难以在网络应用程序中实现。