Visual studio 基于云/基于Web的IDE有哪些优点/缺点?

Visual studio 基于云/基于Web的IDE有哪些优点/缺点?,visual-studio,ide,cloud,Visual Studio,Ide,Cloud,我写这篇文章是因为拉斯维加斯的发展正在发生。VisualStudio2010已经发布,我现在已经在我的机器上安装了这个3GB beast。(我承认,它有一些很好的特点。) 然而,当安装垄断了我计算机的资源时,我开始希望我的IDE工作起来更像谷歌文档(即时可用、随时随地可用、易于共享、易于协作、自然版本) 通过几次谷歌(和StackOverflow)搜索,我发现: 我很清楚,这些IDE缺少VS2010中存在的很多东西。然而,这不是我的问题。相反,我想知道基于web的IDE可能有什么好处?假

我写这篇文章是因为拉斯维加斯的发展正在发生。VisualStudio2010已经发布,我现在已经在我的机器上安装了这个3GB beast。(我承认,它有一些很好的特点。)

然而,当安装垄断了我计算机的资源时,我开始希望我的IDE工作起来更像谷歌文档(即时可用、随时随地可用、易于共享、易于协作、自然版本)

通过几次谷歌(和StackOverflow)搜索,我发现:


我很清楚,这些IDE缺少VS2010中存在的很多东西。然而,这不是我的问题。相反,我想知道基于web的IDE可能有什么好处?假设一家公司花时间创建缺失的功能,那么缺点是什么

好处:

  • 可在任何可用internet连接的地方使用代码
  • 简单共享机制
  • 简化的构建机制
  • 许多现代IDE功能可用(自动完成、语法突出显示等)
  • 需要现代化的浏览器
缺点:

  • 代码仅在internet连接可用的情况下可用
  • 需要现代浏览器(在某些公司设置中,这可能是一个问题)
  • 简化的构建机制
  • 听天由命
  • 没有本机调试器
  • 没有版本控制的选择
  • 没有明确的备份解决方案
  • 没有明确的方法从提供程序的服务器上完全删除源代码
  • 没有可用的支持
  • 无法选择服务器的维护计划
  • 无法控制IDE或环境功能和工具
  • 必须信任提供商的安全和隐私控制
正如您所看到的,它的许多优点也是潜在的缺点。因此,我认为使用基于浏览器的IDE非常依赖于项目


然而,恕我直言,我认为基于浏览器的IDE没有足够的功能或提供足够的必要服务来取代大多数现代企业中的桌面IDE。

web继承下来的功能不如本机应用程序。另外,如何编译和测试代码?没有一个理智的网络主机会让陌生人在他们的服务器上编译、运行和测试他们的代码

在这里做魔鬼代言人并列出缺点:

断线

事实上,你并不真正拥有任何软件——如果你停止支付每月账单,你就无法再访问它,但你可以在首次付款后继续使用离线安装的产品

大型/有价值的项目如果没有将其源代码隐藏在他们控制的网络中可能会感到不舒服——一个被黑客入侵的帐户,他们的主IP就在网上

有限的扩展生态系统——对于在线服务,通常可以控制它,比如facebook,但没有人告诉resharper它们可以包括哪些功能

强制升级-大公司仍在运行.NET2.0(.NET4刚刚发布)。他们可能行动缓慢,被迫使用最新最棒版本的应用程序对他们来说可能太快了

暴露于bug中-有些人有严格的个人规则,比如他们不接触v1软件。如果您总是使用最新版本,您将面临生产力消耗错误的打击(安全更新与功能更新是不同的类别,但如果您运行的是桌面软件,您可以隔离您的安全风险,并自行决定升级原因)

互操作性-可能您的应用程序与另一个应用程序协同工作-它们可能无法跟上主应用程序的发布速度,并且互操作性功能可能会滞后,而其他开发人员可能会迎头赶上

集中故障点—无法控制备份、冗余等—由服务开发人员控制

就我个人而言,我觉得基于云的服务非常方便,随着时间的推移,现在我有一台笔记本电脑、一台台式电脑和一台工作电脑,我的朋友们也有电脑,在这些电脑之间同步数据就成了一件苦差事。在目前阶段,我们仍在处理web上的玩具应用程序,但希望几年后Silverlight将在这方面取得重大进展。

除了“无处不在”的可用性(请注意引号),您还可以从服务器上编辑代码中获得“好处”。因此,您可以跳过目前许多服务器端应用程序所需的许多部署步骤。有一个简单的编辑代码就像你编辑一个博客,但它也可能是一个诅咒。您仍然需要一种将开发与生产分开的方法


但也就是说,如果你使用博客或许多CMS应用程序,数百万人每天都在使用“基于Web的IDE”,因此显然对特定的应用领域有适用性。我可以告诉你,有时候我希望在部署的应用程序上修复一个快速bug就像单击“编辑”按钮一样简单。

查看上面的示例。Coderun将允许您构建、测试和运行项目。每天都在推着网络的极限。@Gabe:你假设你在构建一个网络项目。现代IDE还用于创建其他类型的项目。啊,所以我们需要胖客户端来创建更多胖客户端。;)只是扮演魔鬼代言人的角色。@Gabe:看起来更自然,是的。任何旨在允许基于web的IDE创建“胖客户端”的解决方案都将包含相当数量的黑客行为。@Adam Robinson:事实上,有一些非常引人注目的用例。Rhomobile为移动应用程序提供了一个基于云的开发环境,几乎所有主要的智能手机和应用商店都提供了一键式部署。您不需要安装VisualStudio、XCode和Android IDE以及黑莓所需的任何东西。事实上,您甚至不需要Windows或OSX。你写申请表