什么时候应该构建一个Web应用程序而不是胖客户端?

时间:2009-02-06 22:12:23

标签: architecture web-applications thick-client

我想听听其他人建议何时构建Web应用程序而不是构建胖客户端的建议。

在过去几年中,我参与了几个关于是否应该使用Web浏览器界面构建应用程序(或升级旧应用程序)的讨论。通常这些是组织内部使用的内部系统,而不是大众市场的收缩包装产品,它们实际上并不在公共互联网上。我不想仅仅将讨论局限于这些类型的应用程序。

有明显的情况,应用程序应该是一个或另一个(例如,没有基于Web的视频编辑软件)。另一方面,Javascript库在浏览器中提供更丰富的体验,每天难以实现。

让Javascript库和高级服务器端技术在客户端上进行诸如右键单击上下文菜单,拖放等操作而无需大量工作吗?在什么时候,为Web编写的额外复杂性会覆盖诸如易于部署和跨平台兼容性等好处,特别是如果您不是要创建下一个Stack Overflow,而只是构建内部应用程序?

内部应用程序是否有一个受限制的,受限制的受众或多或少会覆盖胖客户端可以提供的改进可用性的任何问题?

3 个答案:

答案 0 :(得分:6)

我不想做网页应用:

- 支持一千个环境,每个环境都有自己的怪癖。具体来说,病毒,特洛伊木马,软件干扰,并使其在任何地方都能正常工作。

- 担心应用升级并接听大量电话

- 处理丢失数据的客户

当每次交易计算密集时,我选择一个胖客户端,或者每次交易都有大量的数据传输。

我喜欢通过一次升级修复每个人的问题。它可能并不适合所有人,但它是我的生活质量和我工作的质量上升的地方。使Web应用程序在几种不同的浏览器上运行可能比在不同条件下的大量不同操作系统更容易。

随着Flex / Air的出现,您可以在浏览器中提供完整的应用程序体验。浏览器正在成为通用接口,无论是在本地安装还是在云端安装。

Web应用程序也有其缺点。我只是更有动力构建网络应用程序,因为专业人士似乎超过了我选择的项目的缺点。

答案 1 :(得分:3)

我相信我们仍处于这样的程度:除非有理由将其作为Web应用程序,否则它应该是本地应用程序(厚实)。很明显它应该是一个Web应用程序。我觉得它应该是一个网络应用程序,除非它显然应该是本地的。我不认为我们的企业愿意让员工依赖于他们无法控制的Web应用程序。对于公司内部的应用程序,我认为数据,安全性和部署/升级的移动是决定的关键因素。

应用在网络上的几个关键原因。

  1. 无论您使用什么计算机,应用程序和数据都需要随身携带。
  2. 需要集中数据,并且需要传输到客户端的数据量是合理的。
  3. 使用厚应用的几个原因:

    1. 适用于本地资源的公用事业。
    2. 多次执行数据处理的应用程序。
    3. 与网络断开连接时需要访问数据的应用程序。

答案 2 :(得分:1)

我记得在部署不基于网络的内部应用程序的糟糕时期的事情: 总是至少有一台计算机设置得如此不同,以至于升级不起作用。有时更多,每台机器的问题都不同。 在管理员被迫(通常是数周或数月之后)之前,总会有用户拒绝安装升级。由于新业务规则未得到执行,最终导致数据出现问题。

相关问题