Visual Studio 11预览:性能有没有减弱?
openkk 13年前
<p> 在我们关于即将到来的 Visual Studio 11 迷你系列的前几篇文章中已经讨论了有关所支持<a href="/misc/goto?guid=4958200764339482546">编程语言</a>和<a href="/misc/goto?guid=4958202641126492229">集成开发环境</a>的新功能。今天我们要看一下会影响所有使用 Visual Studio 开发者的另一重要方面:性能。</p> <p> 虽然不像新功能那么令人兴奋,但是 Visual Studio 环境的性能问题已<a href="/misc/goto?guid=4958202641877732311">贯穿</a> <a href="/misc/goto?guid=4958202642618344925">好几</a> <a href="/misc/goto?guid=4958202643358000891">代</a>产品成为一种反复出现的开发者忧虑。这种忧虑一直持续到目前的 Visual Studio 2010 和最近发布的 Visual Studio 11<a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27543">开发者预览版</a>。在今年早些时候微软发布了 Visual Studio 扩展 <a href="/misc/goto?guid=4958202644835456237">PerfWatson</a>,此扩展专门用于从 Visual Studio 2010 SP1 用户那里收集实际性能数据,以便在 Visual Studio 11 发布前修正这些问题。</p> <p> 从那时起,PerfWatson 已被<a href="/misc/goto?guid=4958202645587322691">集成</a>到 Visual Studio 11 中,以帮助微软的开发团队修正出现的问题,从而该版本初见端倪。微软的工程总监 Larry Sullivan 最近在 Visual Studio UserVoice 反馈网站的<a href="/misc/goto?guid=4958202646329130160">性能分类</a>下提供了一个<a href="/misc/goto?guid=4958202647066595539">更新</a>。Sullivan 指出已收到超过“4700回复和投票”,并且他希望开发者继续提供评论和 PerfWatson 数据。</p> <p> Sullivan 的更新引发了很多用户热议。现在一起回顾一下部分评论,这些评论表达了许多开发者正在经历的挫折:</p> <p> 用户<em>Darrell</em>写道:</p> <blockquote> <p>“是的——你正在听取针对下一代 Visual Studio 的反馈,此举确实很棒,但是对于当前版本的 Visual Studio 又在做些什么?在推出适用于 VS2010 的 SP 补丁包之前,难道我们就不能获得那些修复中的一些么?Visual Studio 正在严重迫使我远离 Windows 开发。由于面向对象建模(OOM)的问题(拥有大量内存且运行 64 位版本)我的 VS 每天会崩溃 2 至 3 次,而且我经常会遇到其他性能问题,这使得我的生活简直像地狱一般。照这么下去,我的下一份合约将不会做 .NET 开发,或者反正至少不是在 Windows 上开发。”</p> </blockquote> <p> 用户<em>Santosh Kumar Arisetty</em>写道:</p> <blockquote> <p>“我的 Visual Studio 2010 每天至少重启两次。它会报告一个问题,真是谢天谢地。我希望所有这些问题将尽快得到解决,从而使 VS 更加健壮。如果这些可作为适用于 VS2010 的 SP 补丁包的一部分,而不是 VS2011 的一部分的话,那就真的太棒了。”</p> </blockquote> <p> 用户<em>PleaseFixYourBugs</em>摘录:</p> <blockquote> <p>“你完成你的性能工作了么??!你验证你的胜利果实了么???对不起,但我什么也没看到。我花了不少时间把玩 VS2011 开发者预览版,但是它完全与 VS2010 一样慢。而且你说你正在准备收尾工作?!太离谱了。”</p> </blockquote> <p> 用户<em>VS Perf</em>写道:</p> <blockquote> <p>“我觉得修复 VS 性能问题的最佳方式就是在所有内部项目中使用它,即 Dogfooding<sup>[1]</sup>。据我所知,你们的一些/许多开发者在内部并不使用它,尤其对于那些较大的项目,对不?还是我被误导了?”</p> </blockquote> <p> 这些以及其他评论导致 Sullivan 发表了以下回复。首先,他想澄清开发者预览版相对于已排程的 Visual Studio 11 测试版(Beta)的作用:</p> <blockquote> <p>“我应该更清楚不过的是,我们正处于针对测试版性能改进的大力推进的收尾阶段,而不是针对开发者预览版的,并且我期待每个人都能获取测试版,从而感受这些改进。开发者预览版实际是为了展示我们对于 Win8 和云开发的支持,以及新的应用程序生命周期管理(ALM<sup>[2]</sup>)功能和 Team Foundation Service。我们努力检测该产品以便收集更好的有关你在 Visual Studio 上的哪些地方花时间等待的遥测数据。虽然此项工作在开发者预览版中并未显示出成功,但是非常有助于我们更好地理解 Visual Studio 中那些问题最多的区域,而且此项工作将会在测试版及后续版本中产生效益。”</p> </blockquote> <p> 针对用户“VS Perf”提到的 Dogfooding(在内部使用产品的实践)问题,Sullivan 这样说道:</p> <blockquote> <p>“既然提到了 Dogfooding,那么我想让你知道我们对 Visual Studio 和 TFS<sup>[3]</sup>进行内部使用的情况。我们使用我们的产品来构建我们的产品,而且我们这么做的原因正如你所说的一样,以便让每个开发者对该产品都有感觉。为了给你一些范围感——在 Visual Studio 部门中,我们通常有数以百计的员工工作在最新版本上,而在 Visual Studio 部门之外,我们同样有许多在工作中使用当前版本产品的合作伙伴团队。开发部将 TFS 用于我们所有源代码的管理、bug 和工作项目追踪,以便我们做到使用我们产品的完整范围。”</p> </blockquote> <p> InfoQ 将继续跟踪 Visual Studio 11 的发展,见证这些性能变化是如何在发布代码中体现出来的。</p> <p> <strong>译注</strong></p> <p> [1] <strong>Dogfooding</strong>,又称 Eating your own dog food,是指当某家公司(通常是软件公司)使用其自己制作的产品时的那段时期。在 1988 年,微软经理 Paul Maritz 发给 Microsoft LAN Manager(产品名,微软局域网管理器)的产品测试经理 Brian Valentine 一封题为“Eating our own Dogfood”的电子邮件,要求他增加该公司产品的内部使用率。从那时开始,此术语的用法传遍了整个公司。Dogfooding 可能是某公司展示对其自己产品有信心的一种方式,因此也是一种见证广告。例如,微软和谷歌都强调对其自己的软件产品的内部使用。"eating your own dog food" 背后的想法是,如果你希望客户购买你的产品,那么你也应该愿意使用它们。更多详细内容参见 <a href="/misc/goto?guid=4958202647801042724" target="_blank">Eating your own dog food</a>。</p> <p> [2] <strong>ALM</strong>,Application Lifecycle Management,即应用程序生命周期管理,用于支持应用程序在开发团队与运营团队之间进行流动和转移。更多详细内容参见 <a href="/misc/goto?guid=4958202648545481260" target="_blank">Visual Studio Roadmap</a></p> <p> [3] <strong>TFS</strong>,Team Foundation Server,更多详细内容参见 <a href="/misc/goto?guid=4958202649283931181" target="_blank">Team Foundation Server 是什么?</a>。</p> <p><strong> 查看英文原文:</strong><a href="/misc/goto?guid=4958202650015203212">Preview of Visual Studio 11: Wither Performance?</a></p> <div id="come_from"> 来自: <a id="link_source2" href="/misc/goto?guid=4958202650762538809" target="_blank">InfoQ</a> </div>