解析Visual Studio 2015促进生产力的10个新功能

1 性能提示 Performance Tips

当我们想知道执行一段代码所耗费的时间时,需要借助于.NET 框架的Stopwatch类,像下面这样:

class Program
{
    static void Main()
    {
        // Create new stopwatch
        Stopwatch stopwatch = new Stopwatch();

        // Begin timing
        stopwatch.Start();

        // Do something  这里是需要测试的耗费时间的代码
        for (int i = 0; i < 1000; i++)
        {
            Thread.Sleep(1);
        }

        // Stop timing
        stopwatch.Stop();

        // Write result
        Console.WriteLine("Time elapsed: {0}",stopwatch.Elapsed);
    }
}


我们需要手工的在需要测试执行时间的代码断开始和结束位置增加代码Stopwatch类,然后调试时查看代码的执行时间。

Visual Studio 2015引入新的性能提示功能,如下图所示,当调试一个段代码时,放置二个断点,当调试到第二个断点的地方时,Visual Studio会显示从上一个断点执行
到此执行断点时所耗费的时间:
 
 执行一段代码调用,在代码调用的完成之后,也可以显示调用这段代码所耗费的处理器时间:
 

 

2  快速代码编写提示 Quick Action Light Bubble Icon

当Visual Studio的智能感知后台检测代码发现问题时,它会提示该代码有问题,并且提供解决此问题的建议方法。这个功能有点像是抄袭Resharper的,Resharper很早的版本就具备这样的功能。有两种气泡提示

语法错误修正

如上图所示,当前类型中没有定义activyName这个变量或是属性,所以Visual Studio对此语法错误产生三个提示:

A 在当前类型中增加变量定义

B 在当前类型中增加只读的变量定义

C 在当前类型中增加属性

 

代码重构建议

如下图所示的代码例子,第一的变量定义resultList可以忽略定义,在第二行代码中直接用tempResults.ToList() 来替代。

 

在我的开发环境中,安装Visual Studio之后必备的第三方插件是Resharper,这个功能在Resharper很早就出现了。

 

3  自定义窗体布局 Window Layout

Visual Studio有一套默认的布局方案,如果将布局调整多次后还想回到初始的界面布局,只能调用Window菜单下的Reset Window Layout恢复到安装后的状态。

布局通常是指解决方案浏览器的位置,宽度,输出窗口的位置和高度等信息,这此信息被Visual Studio保存着,只保留最新的一次布局。

Visual Studio 2015引入了布局保存方案,用户可以保存这些布局信息,以方便切换任务时调用不同的布局方案。

 

4  简化重命名 Simplified Rename

当需要重命名一个变量时,可以右键单击变量名称选择重命名或是按F2快捷键,Visual Studio 用绿色字高亮标识出当前文件中用到此变量的地方,同时在当前编辑器的右上角显示

引用到此变量的其它文件,可以预览重命名后的变化。

此功能可以看作是Visual Studio 重构中重命名变量功能的改善。Resharper的重命名功能比这个方便很多。

 

5 断点设定改善 break point improvement

Visual Studio 改善了基于条件表达式断点的条件设置界面,如下图所示,Visual Studio 2013中显示的自Visual Studio发布以来的经典的断点设置界面。

下图是Visual Studio 2015中的断点的条件表达式设置界面,当条件符合时,还可以增加方法,如下图中所示的将自定义消息输出到Output窗口。

关于Visual Studio的条件表达式,推荐一个非常不错的插件,OzCode,它以图形化的方式显示各种条件的表达式及其运算结果,极大的方便了程序调试。

Visual Studio 2015的断点还支持撤消功能,如果不小心删除一个断点,点撤消(Ctrl+Z)可恢复此断点。

 

6 错误输出改善 error list improvement

先看一下Visual Studio 2013中的错误输出窗体的界面:

再看Visual Studio 2015中的错误输出窗体:

Visual Studio 2015增加了编译器编译报错的错误代码,如上图中的CS0219,这样方便查阅MSDN相应的编译问题重现即可快速修复错误问题。

输出窗口的Code 列,CS开头的表示编译错误,CA开头的表示代码分析。

 

7  即时窗口中支持Lambda表达式和LINQ查询  Lambda expression and linq support in immediate window

在调试代码时,在即时窗口中直接输入一个表达式,Visual Studio会对此表达式求值并返回结果。Visual Studio 2015的即时窗口现在支持Lambda表达式和LINQ查询。

 

8  NuGet 包管理器改善  NuGet Package Manager improvement

Visual Studio 2015提供图形化的NuGet包操作工具,支持包搜索,选择项目需要引用的包是可以选择版本。

这个改善可以让NuGet生手摆脱对命令不熟悉的恐惧感。

 

9  静态引用 static using

Console类有一个WriteLine方法,现在可以直接在代码中调用WriteLine方法而不用加Console类型名称,如下图所示:

有点像C++语言的全局函数,如果WriteLine方法在多个类型中有定义,并且这几个类型都有加静态引用(statis using),编译时仍然会报错。

 

10 属性或方法可用Lambda表达式实现 Implement Methods and Properties with Lambda Expressions

方法体为Lambda表达式

public override string ToString () => string.Format("{0},{1}",x,y) ;

属性定义为Lambda表达式

public double Distance=> Math.Sqrt(X*X + Y *Y) ;

时间: 2024-08-08 01:04:21

解析Visual Studio 2015促进生产力的10个新功能的相关文章

Visual Studio 2015 RC中的ASP.NET新特性和问题修正

(此文章同时发表在本人微信公众号"dotNET每日精华文章") 微软在Build大会上发布了Visual Studio 2015 RC,这也预示着Visual Studio 2015及其背后框架的功能特性已经确定,我们也可以来看看和之前的CTP到底有什么区别. 在Build大会宣布发布Visual Studio 2015 RC之后,微软的Web开发和工具团队在其博客上发表了一篇介绍Visual Studio 2015 RC新特性和问题修正的文章.同VS2015 RC伴随发布的是.NET

Visual Studio 2015速递(3)——ASP.NET 新特性

系列文章 Visual Studio 2015速递(1)--C#6.0新特性怎么用 Visual Studio 2015速递(2)--提升效率和质量(VS2015核心竞争力) 早在5月份的Build大会上微软就非常高调的宣传ASP.NET 5了,做为微软开发工具中最重要的几个技术栈之中的一个,本次VS2015的公布却没有尾随公布正式版,也算是一件不大不小的憾事. 即使没有ASP.NET 5.VS2015也不会让你太失望,毕竟还是有非常多小幅的升级和增强. 先来说说ASP.NET 4.6吧.微软总

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 关于

Visual Studio 2015 和 Apache Cordova 跨平台开发入门(一)

基于 Windows 10 的 Visual Studio 2015 跨平台的应用开发主要分为基于Visual Studio 安装 Xamarin 扩展的跨Android.iOS 和 Windows的应用开发,基于Apache Cordova 的 Visual Studio 工具开发跨Windows.Android 和 iOS 设备的应用,基于Visual C++ 创建跨 Android 和 Windows 的应用,以及Visual Studio tools for Unity 创建跨 Andr

Visual Studio 2015 速递(4)——高级特性之移动开发

系列文章 Visual Studio 2015速递(1)——C#6.0新特性怎么用 Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力) Visual Studio 2015速递(3)——ASP.NET 新特性 说是VS2015的高级特性,其实也高级不到哪里,看起来确实“高大上”,正如BUILD2015上演示的那样,你真的可以只用VS2015就可以“通吃”各种移动设备应用了,当然,是有条件的“通吃”,微软给了一系列的解决方案,来辅助完成这一目标. 首先我们来

Visual Studio 2015将在7月20号RTM

(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:用了3个多月的VS 2015终于要迎来RTM了,不过感觉有点淡淡的忧伤(为什么呢?请看正文) 7月20日Visual Studio 2015将正式发布,微软会在Channel 9上直播线上发布会.大家可以通过这个发布会了解VS 2015正式版的最新功能和技术,等发布会结束后就可以马上下载使用VS 2015 RTM了."阅读原文"即是直播地址. 过去这3个多月,我已经使用VS

VS2015--win32工程配置的一些想法之在 Visual Studio 2015 中进行调试的同时分析性能

出处: https://msdn.microsoft.com/zh-cn/magazine/dn973013(en-us).aspx 许多开发商花了绝大多数时间获取应用程序才能正常发挥作用.更少的时间里专注于应用程序的性能.虽然有了很长一段时间分析工具在 Visual Studio 中的,他们是单独的一组学习工具.许多开发人员没有花时间去学习和使用它们的时候会出现性能问题. 这篇文章将介绍 Visual Studio 2015 年新的诊断工具调试器窗口. 它还将描述如何使用它来分析性能作为定期调

Visual Studio 2015简体中文企业版/专业版下载+有效激活密钥

Visual Studio 2015是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码管控工具.集成开发环境(IDE)等等.所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows.Windows Mobile.Windows CE..NET Framework..NET Compact Framework和Microsoft Silverlight 及Windows Phone等. Visual Studio是微软研发的一套开发工

VS2015--win32project配置的一些想法之在 Visual Studio 2015 中进行调试的同一时候分析性能

出处: https://msdn.microsoft.com/zh-cn/magazine/dn973013(en-us).aspx 很多开发商花了绝大多数时间获取应用程序才干正常发挥作用.更少的时间里专注于应用程序的性能. 尽管有了非常长一段时间分析工具在 Visual Studio 中的,他们是单独的一组学习工具.很多开发者没有花时间去学习和使用它们的时候会出现性能问题. 这篇文章将介绍 Visual Studio 2015 年新的诊断工具调试器窗体. 它还将描写叙述怎样使用它来分析性能作为