Web应用程序和桌面应用程序之间的细线

时间:2010-09-11 18:40:53

标签: javascript html

我最近一直在使用网络应用程序,主要是使用javascript和json丰富的Web UI。 我不得不说,通过这些技术,我可以一直留下深刻的印象。

我越来越多地问自己,我是否更喜欢使用经典的GUI来开始(无论是C#/ VB.Net + WinForms,还是C / C ++ + GTK / QT或Java或其他任何东西)。然而,我已经能够在用户界面和网络相关技术方面完成我想要的一切。

虽然我觉得自己拥有所需的一切,但是越来越多的东西不断涌现(并将永远存在),如HTML5,新的javascript功能,甚至更多的东西。

因此,随着网络应用变得越来越强大,我问你:

  1. 截至目前,网络应用与桌面应用之间的界限有多薄?
  2. 这条线的未来是什么?网络应用程序在不久的将来有多大能力?从这个意义上讲,是否存在Web应用程序的定义,或者它们是否会永远改进它?
  3. 我想知道W3对此有什么看法,尽管我还没有调查过。

6 个答案:

答案 0 :(得分:3)

实际上,我们只是在计算世界中完全循环。今天的网络浏览器只是30年和40年前的绿屏终端。

过去,您需要在大学的计算机上花时间来运行您的程序,然后支付您的程序处理和运行所花费的时间。从最终用户角度来看,这是低效的,因为它是在批处理和队列过程中完成的,因此您的结果必须等到第二天。从大学的角度来看,虽然他们拥有比他们知道的更多的计算能力,但是将其耕种是有道理的并且给了一个很好的收入来源。

Flash前进了几年,桌面开始变得如此强大,如果不是比大学的计算机更强大,批处理和队列处理的日子已经消失。但是,以桌面为中心的应用程序存在一个基本缺陷,即多用户需求。如果多个用户需要同时使用该应用程序,则需要一个服务器来处理多会话数据需求。

客户端应用程序对于执行数据验证等操作很有用,但客户端越厚,使用不同版本的客户端在服务器上填充数据时运行的风险就越大。

解决方案,“网络”客户端。使用术语web虽然在我个人看来实际上是错误的。基于html /浏览器的客户端可以删除多个版本的桌面客户端发现的问题,因为所有用户始终使用相同的版本。在数千台桌面上部署升级的日子已经一去不复返了。基于浏览器的客户端只需要在服务器端进行更新,所有用户都可以立即获得新功能。

答案 1 :(得分:1)

要回答关于未来的这个问题,让我们看看过去一年多的时间:

http://www.codinghorror.com/blog/2009/08/all-programming-is-web-programming.html

事实上,它引用了3年前的一篇更早的帖子。未来是Atwood定律:任何可以用JavaScript编写的应用程序, 最终将用JavaScript编写。

http://www.codinghorror.com/blog/2007/07/the-principle-of-least-power.html

答案 2 :(得分:0)

除了一些UI问题,网络应用真实应用。

未来是什么?希望我有一个水晶球......

但是,如果不是所有的桌面应用程序,我都会猜测趋势会继续下去,而网络将会包含大部分内容。

答案 3 :(得分:0)

两者仍有其含义。 Web应用程序将覆盖全局连接的应用程序,因为存在Web而存在的应用程序。它们每天都变得非常重要,或者建筑师让我们认为它们很重要。

GUI仍然存在,因为对于很多没有太多计算机技能的人来说,操作和理解起来仍然比较容易。实际上非常复杂的GUI应用程序可能永远不会进入Web(例如CAD)。它们的复杂性将永远在Web开发的前沿。你无法抓住它们。

所以我相信这条线是值得注意的,并且会存在很长时间。并非所有人都会进入网络。

答案 4 :(得分:0)

刚刚选择使用“网络”API或桌面API是我现在看到的最重要的差异化因素:

  • 支持原生功能
    • 例如在iPhone上:直接访问低级API
    • 凭借当前的浏览器开发速度,我们很快就会在那里
  • 离线工作流程
    • 此处使用HTML5中的离线模式完成的第一步
  • 对“桌面用户界面”的API支持(灵活,可配置,快速)
    • ExtJS等图书馆还没有,但关闭
    • 借助WebGL,Canvas以及越来越强大的CSS功能,创建功能强大的UI变得更加轻松

总而言之,还有很多工作要做,但我想从现在起几年内,网络和桌面应用程序之间没有区别,有些会在线下工作,有些则不会。

很久以前,微软已经与.hta建立了这种愿景,当时它还不够强大。谷歌现在正在继续使用Chrome。

答案 5 :(得分:0)

随着时间的推移,网络应用程序将更接近桌面应用程序。这背后的原因是要求。越来越多的人陷入互联网,浪费时间或在网上浪费时间。因此,对浏览器的要求越来越高。其次,随着企业走向全球化(全球化!)它已经是全球性的,但未来的要求更多。即使是小商店也需要使用互联网进行税收等。发展中国家在治理中使用网络,因此检查税收很容易。对于所有这些,即使一个拥有者有4个小商店,那么他需要有他的销售的汇总数据。因此,所有4家商店都需要互联互通,每天计算所有财务。 一个团队中的人员正在远程工作。因此,他们需要定期共享文件。因此,Google文档等Google文档可以同时从各种用户进行在线编辑。仍然是文档保持同步。 竞争日益激烈。因此,所有业务数据都需要在一个地方进行分析。谁将每天从桌面应用程序收集所有数据并每天同步。因此,即使公司将使用桌面应用程序来提高速度和可靠性,他也需要某种桌面应用程序的网络连接和同步软件。通过这种方式,您可以看到桌面应用程序越来越接近Web应用程序了!

因此,如果您可视化所有这些场景,那么您将发现很难避免使用Web应用程序。 Web应用程序有未来。为了提高效率和速度,Web应用程序将拥有一种软件,可以充当桌面应用程序,并在您使用时下载。