只是想知道您对当前趋势的看法是什么,因为一切都在转移到网络甚至云端。操作系统或桌面应用程序的重要性比Web应用程序受到的关注要少。那些那些仍在开发Windows应用程序的人,比如WPF。为什么还要这样呢?为什么不转向网络编程?例如,Silverlight就是......
答案 0 :(得分:18)
因为仍然可以使用桌面应用程序而不是Web应用程序提供安全性和交互性等级。
答案 1 :(得分:9)
一个原因是表现。 Web应用程序将始终在沙箱中运行,并且无法完全访问本机资源。因此,它们不能像桌面应用程序一样快。这对于IDE,CAD系统和游戏等应用程序非常重要。
答案 2 :(得分:8)
我现在正在运行的应用程序:
我没有看到其中任何一个有什么好处(也许吧Excel - 但是如果你曾试图用html + ajax制作一个大的数据透视表,那只是让你的用户讨厌)会有一个web应用程序。人们制作了大量具有类似需求的应用程序。对于不严格需要它的应用程序强制执行网络/ Web连接也是愚蠢的。
Silverlight是介于两者之间的东西,我不确定我是否认为它是一个典型的“网络”应用程序,更像是一个带有沙盒的Web部署应用程序 - 尽管区别变得模糊。
答案 3 :(得分:6)
精心设计的桌面应用程序通常比精心设计的网络应用程序更有用。这是因为Web应用程序受浏览器允许的限制,受浏览器具有与应用程序无关的控件(工具栏按钮,菜单等)的限制,受到网络固有延迟的限制,等
对于许多类型的问题,这并不重要,基于网络的应用程序的好处超过了可用性问题。但至少在今天的浏览器状态下,很少有网络应用可以在可用性和响应性方面完成桌面应用。
“web app”是指其UI基于浏览器,并且与主要通过网络的数据模型进行交互的人。 “桌面应用程序”是指使用本机控件,与本地数据模型交互或在LAN上交互的应用程序。
答案 4 :(得分:2)
现在
桌面软件更快(您不必去网络读取/写入/处理数据)
由于安全性
不需要互联网连接可以是好的(例如,需要连接互联网以收听mp3或查看自己的照片的笔记本电脑不会更快,也不会更加私密)
有一天,它会比本地存储更好,更快,但是无论何时我们寻找独立,失败或极简,我们都需要拔掉插头
答案 5 :(得分:1)
桌面应用程序与Web开发/云之间没有直接的脱节。无论UI层是网站还是应用程序,云仍然可以支持您的应用程序。我认为瘦客户端正在崛起,其中像Silverlight这样的RIA技术只是一个推动者。
也就是说,有些任务在本地更有意义。如果我必须连接到云来构建我的控制台java应用程序,我会非常沮丧。
答案 6 :(得分:1)
我厌倦了“网络应用与桌面应用”的不断划分。
没有“网络应用”这样的东西 - 浏览器在桌面上执行HTML和JavaScript;当您导航到URL时,它们恰好按需交付。但即使这可能也不是真的,如果它们碰巧在缓存中。
人们通常认为“网络应用程序”是一个浏览器托管的应用程序,恰好操纵托管在云上的资源;而且这种操作通常也涉及在服务器上运行的代码。
但没有什么可以阻止“桌面应用”成为用户操纵基于云的资源的丰富前端。只需看看那里的所有WPF,Air和Objective-C Twitter客户端。
此外,没有任何东西可以阻止您提供仅基于浏览器的HTML5 / JS应用程序来操作本地资源。只需看看“网络应用程序”的3个规范示例 - Gmail,它可以离线工作,无需网络访问。
更不用说浏览器和RIA平台(Flash和Silverlight)的所有进步 - 删除浏览器镶边,分离流程中的选项卡,支持浏览器外执行,被视为“Web应用程序” “现在很快就会转变为你应该被称为”轻量级桌面应用程序“或”便携式桌面应用程序“的东西。 : - )
真正的部门是“丰富的应用”与“覆盖应用”。开发人员可能会投入大量资金来实施一个丰富的应用程序,该应用程序在很大程度上依赖于特定平台的能力来提供用户体验,否则无法实现。或者他们可能希望投入大量资金来实施一个旨在尽可能多地接触尽可能多的用户的应用程序,并且愿意以某种方式限制用户体验以支持渗透。
在这种情况下,你的问题变得毫无意义。表示层的选择与应用程序操作的资源位置选择完全正交。
答案 7 :(得分:0)
这取决于环境。企业用户可以在所有/大部分时间在线,而在家中的某些人可能不会连续连接。此外,您还会遇到各种安全问题,控制和更新每个应用程序遇到的问题。在商业环境中,Web应用程序非常棒,因为您可以更新应用程序一次,并且每个人都可以立即看到更改。我现在做这种工作。但大多数应用程序都是数据驱动的Web应用程序。对于图形或处理器密集型的东西,您需要在桌面级别工作(就像上面提到的其他几个人一样)。