盘点VS2015 预览版的5个新特性
盘点VS2015 预览版的5个新特性
发表于10小时前| 3393次阅读| 来源码农网| 17 条评论| 作者小峰
Visual Studio 2015 Preview包含了很多强大的新特性,无论你是从事Web应用程序开发,还是桌面应用程序开发,甚至是移动应用开发,VS 2015都将大大提高你的开发效率。有几个特性非常有亮点,比如编辑器支持手势识别、Cordova工具包、C++增强工具和最新的Android模拟器。其他的一些特性,虽然很少提到,但是个人觉得在VS 2015开发中我们也能获益匪浅,一起来看看吧。
1、自定义窗口布局
如果你在多个设备上开发应用,那么这个功能就能让你开发起来得心应手了。举个例子,如果你在回家的火车上用Surface Pro开发,上班的时候在23英寸的显示器上开发,那么你可以使用Window -> Apply Window Layout来快速切换开发环境的布局,来适应当前的设备类型。如果你登录了VS 2015,那么你还可以使用快捷键来切换开发环境布局,非常方便。
2、更优的代码编辑器
代码编辑器已经替换成“Roslyn”,将会给你带来不一样的代码编辑体验。当你要修复代码的时候,将会出现一个小灯泡,它会向你提供一系列修复代码的方案,你只需选择即可。
在下面这个例子中,代码引用了不必要的命名空间,我们需要将它们从代码中移除。在执行之前,我们可以先预览最终的效果,以及将会影响到的其他代码。
3、Shared Project集成
有多少次你想在Visual Studio之外使用Shared Project功能,但是现在可以了,你只需要搜索shared,即可出现以下的界面:
选择Visual C# Shared Project,然后新建一个名为Person.cs的类,编写以下代码:
- class Person
- {
- public string FirstName { get; set; }
- public Person()
- {
- FirstName = "Michael";
- }
- }
class Person
{public string FirstName { get; set; }public Person(){FirstName = "Michael";}
}
创建一个控制台应用程序,引用刚才创建的Shared Project项目,就可以编写以下的代码了:
- class Person
- {
- public string FirstName { get; set; }
- public Person()
- {
- FirstName = "Michael";
- }
- }
class Person
{public string FirstName { get; set; }public Person(){FirstName = "Michael";}
}
你也可以创建一个WPF应用程序,引用Shared Project项目,下面是我的项目结构图:
4、Bower和NPM中的代码智能提示
若果你创建一个ASP.NET 5 Web应用程序,系统将会为你自动生成以下的目录结构:
这里将生成一个名为Dependencies的文件夹,里面包含了Bower和NPM,一般来说,你可以将Bower看做是客户端的开发包,比如jQuery和Angular脚本库;可以把NPM看做是开发工具,比如Grunt和Gulp。这些开发包都是通过一个JSON格式的文件来进行统一管理。
- bower.json for Bower
- config.json for NPM
如果你想在Bower中添加一个类库,可以打开bower.json文件,加入自己的类库即可。在下面的例子中,我想要添加最新的Angular库,但又不想打开Angular网站下载,具体操作如下图:
一旦添加成功,我们将会看到安装/更新/删除的菜单选项,这将帮助我们开发WEB应用程序更加得心应手。
5、调试Lambdas表达式
现在我们可以调试lambda表达式了,看看下面的代码:
- List<int> elements = new List<int>() { 10, 20, 31, 40 };
- // ... Find index of first odd element.
- int oddIndex = elements.FindIndex(x => x % 2 != 0);
- Console.WriteLine(oddIndex);
List<int> elements = new List<int>() { 10, 20, 31, 40 };
// ... Find index of first odd element.
int oddIndex = elements.FindIndex(x => x % 2 != 0);
Console.WriteLine(oddIndex);
这段程序将会在控制台中输出2,但是如果我想看每一步的执行结果,可以参考下图:
这个例子中,我们添加了一个监视器和断点,并添加以下代码:
- List<int> elements = new List<int>() { 10, 20, 31, 40 };
- // ... Find index of first odd element.
- int oddIndex = elements.FindIndex(x => x % 2 != 0);
- Console.WriteLine(oddIndex);
List<int> elements = new List<int>() { 10, 20, 31, 40 };
// ... Find index of first odd element.
int oddIndex = elements.FindIndex(x => x % 2 != 0);
Console.WriteLine(oddIndex);
和预期一样,程序返回了3项大于11的结果,这样我们可以更方便、更直接地调试应用程序了。
盘点VS2015 预览版的5个新特性相关推荐
- 红旗系统linux2.6.32屏保咋设置,红旗Linux桌面操作系统 V11社区预览版发布,附新特性介绍...
红旗Linux桌面操作系统 V11(英文名称为RedFlag Linux Desktop 11)社区预览版发布了,根据计划,该版本将开放给用户下载试用.以下将介绍它的新特性:良好的硬件兼容.丰富的外设 ...
- birt预览能有内容发布后没内容_谷歌突然推出Android 11开发者预览版 新版带来部分新功能和改进...
谷歌刚刚在安卓开发者网站放出 Android 11 版的开发者预览版,该版本主要面向开发者提供用来测试新版功能. 在新版本里目前谷歌已经发布部分新功能和改进,随着开发者版本不断更迭后续更多新功能和改进 ...
- 谷歌不支持调用摄像头麦克风_谷歌突然推出Android 11开发者预览版 新版带来部分新功能和改进...
谷歌刚刚在安卓开发者网站放出 Android 11 版的开发者预览版,该版本主要面向开发者提供用来测试新版功能. 在新版本里目前谷歌已经发布部分新功能和改进,随着开发者版本不断更迭后续更多新功能和改进 ...
- [extjs5学习笔记]第三十七节 Extjs6预览版都有神马新东西
本文在微信公众号文章地址:微信公众号文章地址 本文地址:http://blog.csdn.net/sushengmiyan/article/details/45190485 [TOC] 在Ext JS ...
- Windows 8 客户端预览版(Consumer Preview)抢先体验
大家期盼已久的Windows 8客户端预览版今天终于拿到ISO了.废话就不多说了,让我们一起来体验一下CPE和之前的DPE(开发预览版)究竟有什么变化. 安装开始,果真是一条鱼的欢迎界面. 第二个界面 ...
- Win11预览版镜像泄露,来看看!
作者 | 科技鹿 来源 | https://mp.weixin.qq.com/s/cb1fKgDxGNH9S4aTFBHv5w Win11一夜全网曝光了, 微软将于美国东部时间6月24日上午11点举办 ...
- Azure SQL 数据库最新版本现已提供预览版
Tiffany Wissner 数据平台营销高级总监 我们之前在11月宣布将提供新的预览版,在该预览版中我们引入了接近完整的 SQL Server 引擎兼容性和更为高级的性能,这些都代表了下一代的 ...
- .NET 6 预览版 7:新功能已完成 ,将专注于改进
.NET 团队的项目经理 Richard Lander在宣布 .NET 6 Preview 7 时说:"这是 .NET 预览的又一季的结束.", 中文翻译:.NET 6 预览版 7 ...
- 翻译 Windows Server 2016和System Center 2016 技术预览版4 使创新更容易
英文标题:Make innovation easier with Windows Server 2016 and System Center 2016 Technical 中文标题:Windows S ...
最新文章
- mysql查看数据文件ibdata_如何从 ibdata文件 恢复 MySQL 数据库
- 关于Kanas.Net框架的一些背景
- 如何快速是DNS修改生效
- 深度学习笔记5:Building Deep Networks for Classification
- web框架的前生今世--从servlet到spring mvc到spring boot
- eclipse 隐藏项目_前5个有用的隐藏Eclipse功能
- ebs 供应商地点信息_供应商,地址,业务实体,地点关联银行账户
- java8 Optional正确使用姿势
- python列表中存类对象_Python DataFrame或用于存储对象的列表
- Linux命令详解-mkdir
- Spring Cloud Eureka 2 (Eureka Server搭建服务注册中心)
- PHP数组和Json之间的转换
- centos7中,mysql连接报错:1130 - Host ‘118.111.111.111’ is not allowed to connect to this MariaDB server...
- vscode使用Git Graph提交成功,但是仓库没有更新
- named 委派与转发
- Java加密:一、Base64算法
- 封装0805跟0603有什么区别,只存在大小的区别么???
- 笔记本单/双网卡如何同时上内外网
- 开心网程炳皓:早期创业公司应该做一根针
- mysql distinct count_MySQL中distinct和count(*)的使用方法比较
热门文章
- linux awk命令用途,Linux:“awk”命令的妙用
- oracle12c默认字符集,修改Oracle【12C】字符集
- php读取数组修改内容,php 数组如何修改值
- selinux php errors,apache php selinux --Syntax error 无法加载模块
- ROC 曲线和 AUC 值
- python 后台执行
- tensorflow 进阶(三),BP神经网络之两层hidden_layer
- 文巾解题 136. 只出现一次的数字
- MATLAB从入门到精通-最速下降算法、牛顿算法、BFGS拟牛顿算法、共轭梯度算法无约束极值问题
- 深度学习核心技术精讲100篇(四十一)-阿里飞猪个性化推荐:召回篇