我想听听其他人建议何时构建Web应用程序而不是构建胖客户端的建议.
在过去几年中,我参与了几个关于是否应该使用Web浏览器界面构建应用程序(或升级旧应用程序)的讨论.通常这些是组织内部使用的内部系统,而不是大众市场的收缩包装产品,它们实际上并不在公共互联网上.我不想仅仅将讨论限制在这些类型的应用程序中.
在一些明显的情况下,应用程序应该是一个或另一个(例如,没有基于Web的视频编辑软件).另一方面,Javascript库在浏览器中提供更丰富的体验,每天难以实现.
有没有Javascript库和高级服务器端技术,无需大量工作就可以在客户端进行右键单击上下文菜单,拖放等操作?在什么时候,为Web编写的额外复杂性会覆盖诸如易于部署和跨平台兼容性等优点,特别是如果您不是要创建下一个Stack Overflow,而只是构建内部应用程序?
内部应用程序是否有一个有限的和受限制的受众或多或少都会覆盖厚客户端可以提供的改进可用性的任何问题?
当我不想要时,我去Web应用程序:
- 支持一千个环境,每个环境都有自己的怪癖. 特别是,病毒,特洛伊木马,软件干扰,并使它在任何地方都一样.
- 担心应用升级和接听大量电话
- 处理丢失数据的客户
当每次事务计算密集时,我选择一个胖客户端,或者每个事务有大量数据传输.
我喜欢用一次升级修复每个人的问题.它可能并不适合每个人,但它是我的生活质量和我工作的质量上升的地方.使Web应用程序在几个不同的浏览器上工作可能比在不同条件下的大量不同操作系统更容易.
随着Flex/Air的出现,您可以在浏览器中提供完整的应用程序体验.浏览器正在成为通用接口,无论是在本地安装还是在云端安装.
Web应用程序也有其缺点.我只是更有动力构建网络应用程序,因为专业人士似乎超过了我选择的项目的缺点.