在 //BULID/ 2016 上宣布的 Visual Studio 和 .NET 更新

简要选了几点介绍。

Visual Studio 15(根据推出日期,很可能是 Visual Studio 2017)将采用轻量化安装。在 Visual Studio 2010 开始启用“臃肿安装”之后,微软终于下决心将组件分离了。说实话,我也不知道那十几个 GB 的体量是从哪里来的。我好像记得什么时候读到过,Visual C++ 的符号存储($PROJECT.sdb)将考虑使用更小的数据库(比如 SQLite)替代 SQL Server Compact Edition——就不用安装那些从来就没用过的 SSCE 组件了,我又不是做嵌入式开发的。

Visual Studio 将支持直接以文件夹形式组织代码。用 Visual C++ 有两点蛋疼,切换工具链和项目组织。传统的 Visual C++ 项目是通过工程文件组织的,工程中的“代码文件夹”是逻辑上的概念,只表示一些代码是相关的从而成为一个组,和文件系统中的目录并不等价。而许多现代的语言是支持单文件编译的,组织上默认按照文件结构(“在里面的都是需要的,如何使用看配置”),让人神清气爽。你可以看看 Source SDK 2013,它的文件组织就是很传统的“抱团”,在工程文件中分组归类。你们感受一下:

文件结构

项目组织

终于,VC++、VB、C#、F# 一系列语言都可以按照流行的方式组织工程了。

Mono 应用 MIT 许可(公布于4月1日,但是不是愚人节玩笑)之后,整合进 .NET Foundation。最大的亮点在微软为新的标准库定的其中一个目标:掌握一个库而不是一个平台——以后真的就不会看到那些抱怨 .NET 运行时太大的家伙了。.NET 这一步学习 Java 是对的,用核心库+包来构建生态,或者至少进一步分离以适用不同的应用场景。(唔,说起来简单,但是 CLR 内部的依赖关系错综复杂……)


  1. .NET的未来包含一个开源的Mono
  2. 微软宣布VS 2015后继版本,可使用Visual C++ for Linux了
分享到 评论