visual_studio

微软TypeScript 3.0正式发布:引入“项目引用”新概念

北京时间7月31日,微软宣布推出 TypeScript 3.0 正式版。TypeScript 3.0 是一个新的里程碑。官方表示,尽管版本号是一个大变化,但 3.0 版本几乎没有破坏性的变更(这意味着我们可以很轻松地升级到该版本),3.0 引入了一种新的灵活且可扩展的方式来构建项目、提供对参数列表进行操作新的强大支持能力、强制显式检查的新类型、更好的 JSX 支持、整体更好的错误处理,等等。

访问:

微软中国官方商城 – Visual Studio

下面简单说说值得关注的更新,更详细的更新说明请移步至 发布说明

 

微软TypeScript 3.0

 

这是 3.0 版本中引入的一个新概念。考虑这样一个场景 —— 对于开发者而言,为库或应用程序提供几个不同的构建步骤是相当常见的。也许你的代码库有一个 src 和一个测试目录。也许你将前端代码放在一个名为 client 的文件夹中,将 Node.js 后端代码放在名为 server 的文件夹中,每个文件夹都从共享文件夹中导入代码。也许你使用所谓的“monorepo”并且有许多项目以复杂的方式相互依赖。

官方表示,针对上述的场景,他们为 TypeScript 3.0 开发了最重大的功能之一 ——“项目引用(project references)”。

项目引用允许 TypeScript 项目依赖于其他 TypeScript 项目 —— 特别是允许 tsconfig.json 文件引用其他 tsconfig.json 文件。指定这些依赖项可以更容易地将代码拆分为更小的项目,因为它为 TypeScript(及其周围的工具)提供了一种理解构建顺序和输出结构的方法。这意味着更快的构建可以逐步工作,并支持跨项目导航、编辑和重构。由于 3.0 奠定了基础并公开了 API,因此任何构建工具都能够提供这一功能。

在JSX 中支持 defaultProps

该特性使得调用者可以通过不需要某些参数来更轻松地使用函数。

破坏性变更API 的破坏性变更

  • The deprecated internal method LanguageService#getSourceFile has been removed, as it has been deprecated for two years. See #24540.
  • The deprecated function TypeChecker#getSymbolDisplayBuilder and associated interfaces have been removed. See #25331. The emitter and node builder should be used instead.
  • The deprecated functions escapeIdentifier and unescapeIdentifier have been removed. Due to changing how the identifier name API worked in general, they have been identity functions for a few releases, so if you need your code to behave the same way, simply removing the calls should be sufficient. Alternatively, the typesafe escapeLeadingUnderscores and unescapeLeadingUnderscores should be used if the types indicate they are required (as they are used to convert to or from branded __String and string types).
  • The TypeChecker#getSuggestionForNonexistentPropertyTypeChecker#getSuggestionForNonexistentSymbol, and TypeChecker#getSuggestionForNonexistentModule methods have been made internal, and are no longer part of our public API. See #25520.

相关链接:

发布说明 https://blogs.msdn.microsoft.com/typescript/2018/07/30/announcing-typescript-3-0/

TypeScript 3.0 新特性 https://github.com/Microsoft/TypeScript/wiki/What’s-new-in-TypeScript#typescript-30

破坏性变化 https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#typescript-30

下载地址:

npm

Visual Studio 2015 plugin

Visual Studio 2017 (Select new version in project options)

NuGet package

Visual Studio

Visual Studio 2017 15.8 正式发布 测试速度提高 82%

Visual Studio 2017 15.8 版本已正式发布,现可选择在开始安装之前下载所有安装文件。要使用这一新选项,请在安装程序中选择“全部下载后再安装”选项。 如果 Internet 连接速度较慢,建议使用此选项。默认选项仍为“下载时安装”,它可并行下载和安装。

Visual Studio

 

性能

此版本包含以下性能改进:

  • 由于无需再重新加载解决方案,因此可更快地对大型解决方案执行 C#、VB 和 C++ 项目的分支切换。
  • 缩短在大型解决方案中卸载和重载一小组 C# 和 VB 项目的时间 – 从数分钟缩短到数秒钟。
  • 添加了一个选项,用于禁止重新打开已在上一会话中打开的文档,因为重新打开某些类型的文件或设计器会延迟解决方案加载。
    • 通过“工具”>“选项”>“项目”>“解决方案”>“常规”切换此选项。

测试性能

显著提升了在运行包含多个测试项目的大型解决方案期间的性能。 在我们的实验室中,超过 10,000 个 MSTest 的解决方案执行单个测试的速度提高了 82%!

Visual Basic 性能改进

Visual Basic 现显著提升了使用 CInt(Fix(number)) 模式将非整数类型转换为整数时的性能。

性能分析

此版本在以下方面增强了性能分析功能:

  • 添加了“启动但暂停分析”功能:
    • 性能探查器 (ALT-F2) 中的 CPU 使用情况工具现可启动但暂停分析。 如果 CPU 使用情况调查在一段时间后才提供有价值的结果,则此功能非常有用。 通过在禁用 CPU 使用情况收集的情况下启动,性能探查器将不收集任何 CPU 使用情况示例堆栈数据,直到专门启用此类数据。 这样一来,收集和分析的数据量大幅降低,从而使性能调查更加高效。
    • 要在禁用 CPU 使用情况示例收集的情况下启动会话,请在性能探查器启动页中单击 CPU 使用情况工具旁边的设置(齿轮)图标,以显示 CPU 使用情况属性页,然后取消选中标记为“启用 CPU 分析(采样)”的复选框。 最后,按“确定”以保存这些设置。

Visual Studio\*启动目标应用程序后(按性能探查器启动页中的“开始”按钮),将看到一个显示 CPU 使用率图的监视屏幕,你可通过它控制 CPU 分析**。 要启用 CPU 使用情况示例堆栈数据收集功能,请按视图中间的“启用 CPU 分析”链接,或单击 CPU 使用率图下方的“记录 CPU 配置文件”按钮。 可单击“记录 CPU 配置文件”按钮,根据需要多次启用/禁用示例数据收集。 CPU 使用率图的颜色出现相应变化,表示在该时间点是否启用/禁用示例收集。

Visual Studio添加了 .NET 对象分配跟踪工具:

  • 向性能探查器提供的工具系列增添了 .NET 对象分配跟踪工具。 如果为性能探查器会话调用此工具,将为目标应用程序中发生的每个 .NET 对象分配收集堆栈跟踪。 此堆栈数据和对象类型及大小信息一同进行分析,以显示应用程序的内存活动详情。 你可以快速确定代码中的分配模式并识别异常。 此外,对于垃圾回收 (GC) 事件,用户可轻松确定已收集和保留了哪些对象,从而快速确定占用应用程序大部分内存的对象类型。
  • 这对 API 编写器来说尤其有用,有助于最大程度减少分配。 许多应用程序都会超出诊断数据收集中涉及的缓冲区限制,但仍可很好地诊断执行 API 关键方案的小型测试应用程序。 测试应用程序执行过程中,性能探查器会显示一个监视视图,其中包含实时对象(计数)的折线图和对象增量(百分比变化)的条形图。
  • 要使用 .NET 对象分配跟踪工具,请调出性能探查器启动页,选择要分析的目标(默认目标是解决方案中的启动项目),从可用工具列表中勾选“.NET 对象分配跟踪”,然后按“开始”按钮。

Visual Studio

性能分析(CPU 使用情况)

此版本对性能探查器的 CPU 使用情况工具做出了以下改进(可通过 ALT-F2 获得):

  • 默认情况下,“调用树”视图现按逻辑调用堆栈显示异步执行。 可通过取消选中 CPU 使用情况主视图的“筛选器”下拉列表中的“拼结异步代码”选项来关闭此行为。
  • 添加了“模块/函数”视图,该视图按模块 (dll) 和模块内的函数显示性能信息。 在 CPU 使用情况主视图中选择函数时,可从上下文菜单中显示“模块/函数”视图,也可以从“调用树”或“调用方/被调用方”视图的“查看”下拉列表中显示“模块/函数”视图。
  • 在 CPU 使用情况工具的主视图中,为 CPU 使用情况图添加了“实例指示”。 双击任意 CPU 使用情况视图中列出的函数,即可在函数执行时(例如在堆栈上)查看实例。

生产力

此版本在以下方面提升了生产力:

  • 可使用格式文档(Ctrl + K、D 或 Ctrl + E、D)执行其他代码清理进行 C# 开发。 按以下方式配置清理:转到“工具” > “选项” > “文本编辑器” > “C#” > “代码样式” > “格式” > “常规”。
  • 增添了更多使用 Ctrl + . 或 Alt + Enter 的重构和快速操作:
    • dotnet_style_prefer_conditional_expression_over_assignment
    • dotnet_style_prefer_conditional_expression_over_return
    • dotnet_style_parentheses_in_arithmetic_binary_operators
    • dotnet_style_parentheses_in_relational_binary_operators
    • dotnet_style_parentheses_in_other_binary_operators
    • dotnet_style_parentheses_in_other_operators
    • “倒转 If”可让 if-else 语句中的逻辑反转。 将光标置于 if 关键字,以触发此重构。
    • 通过从方法调用站点添加参数,可向方法调用站点添加参数并触发“快速操作和重构”,从而向方法添加参数。
    • 删除不必要的括号时会一并删除对编译不重要的二元运算符两侧的括号。 可通过“工具” > “选项” > “文本编辑器” > “C#” > “代码样式” > “常规”或以下 .editorconfig 配置此样式规则:
    • 此外,还可通过“工具” > “选项” > 或以下 .editorconfig 将“在分配中使用三元条件并返回语句”配置为样式规则:
  • 在“转到所有”窗口中添加了新的命令和改进功能:
    • 通过“转到封闭块”(Ctrl + Alt + 向上键),可快速导航到封闭代码块的开头。
    • 通过“转到下一个/上一个问题”(Alt + PgUp/PgDn),可跳到下一个/上一个问题(错误、波形曲线和灯泡)。
    • “转到成员”(Ctrl + T、M)现默认适用于文件。 可通过将作用域切换到当前文档 (Ctrl + Alt + C),使默认值更改回解决方案。
  • 借助对多个插入点的支持,现可在文件中的多个任意位置创建插入点并选择内容。 这样,你可以同时在多个位置添加、编辑或删除文本。
    • 通过“Ctrl + Alt + 单击鼠标左键”插入点。
    • 使用 Shift + Alt + Ins 在与当前所选内容匹配的下一个位置添加所选内容和插入点。
    • 有关完整操作列表,请参阅“‘编辑’>‘多个插入点’”。
  • 使用 Alt + ` 访问上下文导航菜单。
  • 让键绑定与 Visual Studio Code 和 ReSharper (Visual Studio) 这两个新的键盘配置文件保持一致:。 可访问“工具”>“选项”>“常规”>“键盘”,再使用顶部的下拉菜单查找这些方案。

调试

此版本在以下方面增强了调试功能:

  • 如果安装有多个 Visual Studio 2017 实例,在调试时现在可选择要将扩展部署到的实例。 这样,在预览通道中调试时可以在诸如 Visual Studio 版本等通道中开发。

Visual Studio

\*现在可以直接从发布摘要页附加 Snapshot Debugger__。

Visual Studio

适用于通用 Windows 平台开发的工具

在 Windows 10 Fall Creators Update(内部版本 16299)或更高版本的目标平台版本中,我们对面向通用 Windows 平台的项目的 XAML 设计器进行了许多重要改进。

  • 现可在属性检查器中编辑集合。
  • 设计器现在允许对模板和样式进行编辑,包括这些实体的定义在其他文档中定义时。
  • 类型 IconElement(如 AppBarButton 中的图标)的属性现在在属性检查器中有一个自定义编辑器,使设置这些属性变得更容易。
  • 设计器、编辑器和“编辑并继续”现都应适用于 x:DefaultBindMode。
  • Blend 中的视觉状态管理器体验现在支持 AdaptiveTrigger。

用于 Visual Studio 的 F# 4.5 和 F# 工具

此版本中我们引入了 F# 语言版本 4.5。 这也与新的 FSharp.Core 4.5.x 系列(F# 核心库)保持一致。 可以在 F# RFC 存储库中阅读每个更改的说明。 此版本中还有对用于 Visual Studio 的 F# 工具的诸多改进。

F# 4.5

下面是 F# 语言版本 4.5 中的一些亮点:

Span<‘T> 支持

我们实现了 Span<'T> 和相关功能,因此在 F# 中可通过 SpanMemory 和 ref 之类的构造来有效使用和生成 API。 功能包括:

  • 新的 voidptr 类型。
  • FSharp.Core 中新的 NativePtr.ofVoidPtr 和 NativePtr.toVoidPtr 函数。
  • 新的类型 inref<'T> 和 outref<'T>,分别是只读的 byref 和只写的 byref。 此值对应于 C# 中的 in ref 和 out ref
  • 能够生成 ByRefLike 结构(如 Span 和 ReadOnlySpan)。
  • 能够生成 IsReadOnly 结构。
  • 隐式取消引用方法中的 byref 返回值和 inref 返回值。
  • 能够在 byref/inref/outref 上生成扩展成员。

此功能集修复了 F# 4.1中 byref 返回值初始设计的一个 bug – 即返回 byref 的函数、方法和属性未隐式取消引用返回值。 我们进行此更改,使该功能与 C# 处理 ref 返回值的方式保持一致。 当类型批注指示现在使用 ref 返回值的隐式取消引用时,将用到错误消息。

此外,此功能集还修复了 F# 编译器中的一个 bug – 即可以进行“不良结构替换”,也就是说,调用 F# 结构上的方法时可以使用其他结构替换正调用的实际结构。 现将结构上的 this 参数视为 inref<MyStruct>,其中包含一条错误:如果你希望修改该结构则该错误建议添加可变字段。

可在此功能集的 RFC 中详细了解 span 和 ref 之类的构造。

计算表达式中的 Match!

F# 4.5 引入了 match!,一个用在计算表达式中的新关键字(由 John Wostenberg 独立提供)。 此语法糖等同于在结果中 let! 后跟 match。 可在 match! 的 RFC 中了解详细信息。

放宽了使用 yield 时序列、列表和数组表达式中的向上转换要求

F# 4.5 现在放宽了某些限制:使用 yield 时需要向上转换来将子类型转换为超类型。 自 F# 3.1 起如果不使用 yield 这些表达式中已无此限制,因此此项改进使得与现有行为更加一致。 可在此功能的 RFC 中了解详细信息。

列表和数组括号上允许缩进

F# 4.5 现在放松了列表和数组括号的缩进规则,此前如果列表和数组括号位于自己的行上需将其向前缩进一个作用域。 这项要求一直以来都非常令人困惑,尤其是对 F# 初学者。 此外,F# 序列表达式无此要求。 现在,数组表达和列表表达式与序列表达式一样,不再受此要求限制。 可在此功能的 RFC 中了解详细信息。

枚举用例以公共形式发出

现在 F# 4.5 在所有情况下以公共形式发出枚举用例,以与 C# 发出枚举用例的方式保持一致。 这也更便于分析工具分析来自 F# 代码的日志,其中发出的是值而不是标签名称。 可在此功能的 RFC 中了解详细信息。

F# 编译器改进

F# 4.5 中不仅包括之前提到的语言功能改进,也包括对 F# 编译器的改进。 这些方法包括:

  • 我们删除了 F# 编译器中高达 2.2% 的分配(各种情况下),改进了编译器性能。
  • 修复了对基于结构的可枚举对象使用 yield! 时 AccessViolatioNException 中产生的 bug。
  • 现可再次从 FSharpFunc 中继承。
  • 对于 F# for .NET Core 的调试版本默认禁用尾调用。 它们在发布版本中启用,因此与桌面版 F# 编译器匹配。
  • 修复了 F# 引用规范化,允许你控制写入输出文件的可传递程序集引用。 你便可执行 .NET Core 上程序集重定向的等效操作。
  • 修复了以下 bug:忽略了尝试在内联函数上使用动态调用时用到的错误消息。 错误消息现将传送。
  • F# 现在尊重你可在项目文件中设置的 WarningsNotAsErrors 标志。
  • Isaac Abraham 更新了模式匹配分支不返回相同类型时出现的错误消息,使其更加友好。
  • Steffen Forkmann 修复了编译缺少重载方法实现的接口实现时出现内部错误这一 bug。
  • Gauthier Segay 删除了编译器文法阶段中一些没必要的数组复制。
  • F# 枚举上不完整的模式匹配现在生成详细的警告,给出未涵盖的用例示例(由 John Wostenberg 提供)。
  • `#nowarn “2003” 现在受到尊重(由 Matthias Diitrich 提供)。
  • Steffen Forkmann 修复了在 F# 重载解析中使用 C# 扩展方法可能失败这一 bug。
  • Steffen Forkmann 修复了内部 QueueList 数据结构 bug。
  • Steffen ForkmannEugene Auduchinok 和 ncave 还提供了各种小的优化并进行了代码清除工作。

F# 核心库 4.5.x

现在推出了对 F# 核心库的下列补充内容:

  • 完成了大量工作来改进 async { } 计算表达式的堆栈跟踪。 现在应能够在堆栈跟踪中查看用户代码和用户行号。 可在此功能的 RFC 中了解详细信息。
  • 提供类型 System.Func 和 System.Action 重载的 FuncConvert.FromFunc 和 FuncConvert.FromAction API,帮助 C# 中的互操作。 可在此功能的 RFC 中了解详细信息。
  • 提供了新类型 ValueOption,它是旨在为活动模式带来更好性能的系列未来功能中的首个功能。 可在此功能的 RFC 中了解详细信息。
  • TryGetValue 现在是 F# Map 类型上的新成员。 可在此功能的 RFC 中了解详细信息。
  • 我们解决了首次调用 MailboxProcessor.TryReceive 时 CPU 使用率较高的问题。
  • bool 比较现在使用快速泛型比较(由 Vasily Kirichenko 提供)。
  • Array.allPairs 的摘要文本已更新为正确(由 Patrick McDonald 提供)

F# 工具改进

此版本中提供 F# 工具的重大改进,例如性能改进和一些新的编辑器功能。 与往常一样,F# 开源社区提供了大量内容,作出了巨大贡献。 以下是一些亮点:

  • 我们改进了所有形式的 .NET SDK 样式项目的 IntelliSense 性能,包括那些使用多目标的项目。
  • Vasily KirichenkoSteffen Forkmann 和 Gauthier Segay 进行了社区驱动的工作,分析和改进了非常大的文件的 IntelliSense 性能。 非常大的文件(10k 以上的代码行)中的 IntelliSense 现在约是原来的两倍快。
  • 过时 FSharp.Core(尽管安装了包)的警告不再出现在 .NET SDK 样式项目中。
  • IntelliSense 中 . 之后为成员显示 XML 文档的说明工具提示在 10 秒后不再超时。
  • 修复了无法在对象构造函数参数中设置断点这一 bug。
  • 修复了重命名符号属于泛型参数时将进行复制这一 bug。
  • .NET Framework 的模板(经典 F# 模板)现在使用来自 NuGet 包的 FSharp.Core,以便与 .NET SDK F# 模板保持一致。
  • 现在为 ()[]{}[||] 和 [<>] 大括号对提供自动的事务型大括号完成。 我们与 Gibran Rosa 一起完成这项工作。
  • 现在,可以通过按住 Ctrl 并单击 F# 符号来转到定义。 此笔势的设置在“工具”>“选项”窗口中也受到尊重。
  • 修改了 IntelliSense 性能 UI,允许为各种 IDE 功能配置过时的 typecheck 信息。 每个选项的说明现在显示在设置的工具提示中。
  • 大括号匹配突出显示现在正确地突出显示大括号(与 Vasily Kirichenko 协作完成)。
  • 现在当类型以递归方式定义时“转到定义”正确导航(由 Vasily Kirichenko 提供)。
  • Vasily Kirichenko 修复了文件顶部为空时未将自动导入命名空间打开这一 bug。
  • Vasily Kirichenko 修复了将包含点的 printf 说明符错误地着色这一 bug。
  • Vasily Kirichenko 修复了将递归模块内所有打开项视为未使用这一 bug。
  • Vasily Kirichenko 大大提升了 Unused Opens 分析器的性能。
  • 属性自动完成功能现在仅建议确实是属性的选项(由 Vasily Kirichenko 提供)。
  • 现在为构造函数调用站点上的类型提供程序静态参数生成签名帮助工具提示(由 Vasily Kirichenko 提供)。
  • Vasily Kirichenko 修复了将用作度量单位的值类型作为引用类型进行着色这一 bug。
  • Vasily Kirichenko 修复了滚动时一些文件的语义着色可能消失这一 bug。
  • 现在提供了试验性的 CodeLens 实现(由 Victor Peter Rouven Müller 提供)。 可在“选项”>“文本编辑器”>“F#”>“代码透镜”中将其打开。
  • Sebastian Urban 修复了 F# 编译器服务会错误地省略 XML 文档中模块名称的拼写这一 bug。
  • 使用 Dictionary 与 ContainsKey 和后续 Item 调用的代码已更改为使用 TryGetValue(由 Eugene Auduchinok 提供)。
  • Jakob Majoka 也参与了使用工具提示的其他 API 这一过程的创作。

基础结构、打包和开放源代码改进

我们对基础结构、打包和开放源供稿体验进行了以下改进:

  • 随 Visual Studio 分发的 F# 编译器不再作为单一实例安装在 F# 编译器 SDK 位置。 它现在完全与 Visual Studio 并行,这意味着,并行安装 Visual Studio 最后将导致具有真正的并行 F# 工具和语言体验。
  • 现对 FSharp.Core NuGet 包进行签名。
  • ETW 日志记录已添加到 F# 工具和编译器。
  • FSharp.Core 中非常大的 control.fs/contro.fsi 文件现拆分为 async.fs/async.fsievent.fs/event.fsieventmodule.fs/eventmodule.fsimailbox.fs/mailbox.fsi 和 observable.fs/observable.fsi
  • 我们添加了 .NET SDK 样式版本的项目性能压力测试项目。
  • 从基本代码中删除了 Newtonsoft.Json,现在,你为 OSS 参与者下载的包将少一个。
  • 我们现在使用最新版本的 System.Collections.Immutable 和 System.Reflection.Metadata。

C++ 符合性和工具集改进

此版本包含以下 C++ 符合性和工具集改进:

  • 新的基于令牌的试验性预处理器,它符合 C++ 11 项标准(包括 C99 预处理器功能),并通过 /experimental:preprocessor 开关启用。 使用宏 _MSVC_TRADITIONAL 对其进行控制,使用传统预处理器时定义为 1,使用符合标准的新试验性预处理器时定义为 0。
  • Visual Studio 开发人员命令提示支持启用 Visual C++ Spectre 变体 1 缓解运行时 (-vcvars_spectre_libs = spectre)。 有关 Spectre 缓解的详细信息,请参阅 Visual C++ 团队博客。
  • 向 SSA 优化器添加的两项新内容重点关注新式 C++ 代码生成:冗余存储清除和冗余分支折叠。
  • 优化的内存映射了链接器中的 I/O 性能以减少链接时间。

C++ 跨平台开发

此版本中,我们改进了 C++ 跨平台开发,并向其添加了以下内容:

  • 添加了“添加” > “新项”模板,用于生成遵循“工具” > “选项”中为 ClangFormat 指定的编码约定的 .clang 格式文件。 如果选择 Visual Studio 约定,则生成的文件尝试匹配“工具”>“选项”中用户当前的 Visual Studio 格式设置配置。
  • 将配送的 format.exe 版本更新到 6.0.0。
  • 用于简化向 CppProperties.json 添加配置的模板。
  • 添加了模板以简化向 CMakeSettings.json 添加配置

Visual Studio

C++ 生产力

下面是针对 C++ 生产力的增强功能和改进功能:

  • 有关宏的 C++ 快速信息工具提示现在显示它们的扩展功能,而不仅仅是其定义。 如果复杂宏在其阐明预处理器使用什么代替宏标识符时引用了其他宏,这将特别有用。
  • 添加了新的快速修复灯泡,将基本宏转换为 constexpr 作为使代码变得新式的新工具。
  • 用于模板的 IntelliSense 提供了有关模板参数的详细信息,便于在模板正文中充分利用 IntelliSense。

Visual Studio

  • 我们正在努力使代码分析体验焕然一新。 你现在可以启用“工具” > “选项” > “文本编辑器” > “C++” > “试验” > “代码分析”下新的进行中功能。 打开或保存文件时,代码分析可在后台中运行,并且结果显示在错误列表中,在编辑器中显示为绿色波形曲线。

Visual Studio

C++ 调试改进

我们进行了以下调试改进:

  • 仅我的代码功能现在允许逐步执行系统或第三方 C++ 库中的代码,以及折叠调用堆栈窗口中的那些调用。 当代码使用 /JMC 进行编译且 .natjmc 文件中指定了非用户库路径时,可以为任何 C++ 库控制此行为。 如果你在进入时系统库调入用户代码,则调试器跳过所有系统代码并在用户代码回调的第一行上停止。

Visual Studio

  • 数据断点现在可在“监视”、“快速监视”、“自动”和“局部变量”窗口中进行设置,从而只需几次短的单击即可在存储于内存中的值发生更改时切断。
  • 源链接允许在编译过程将可执行的或库的原始源代码相关信息嵌入 PDB。
  • 调试时,如果程序终止执行,控制台窗口现将默认保持打开状态(类似于在没有调试器的情况下运行程序)。 可以在“工具” > “选项” > “调试” > “常规”中将此行为切换回自动关闭控制台。

Visual Studio Web 工具

库管理器是 Visual Studio 2017 中包含的新功能。 有助于在 Web 项目中管理客户端端库。

容器工具

为 ASP.NET Core Web 项目添加了新的单个项目 Docker 容器体验。 这补充了基于 Docker Compose 的现有容器工具,并提供了更简单便捷的方法直接从 Visual Studio 创建、调试和生成 Docker 容器。

创建项目时,可以添加 Docker 支持。

Visual Studio

或者,可以通过解决方案资源管理器中项目的上下文菜单对现有项目启用 Docker 支持。 一旦执行此操作,Visual Studio 将在项目中创建单个 Dockerfile。 可以选择 Windows 还是 Linux。

 

sual Studio 还添加用于 Docker 的调试器启动配置文件,以便项目在容器内运行时可对其进行调试。

Visual Studio

如果有带多个 Docker 项目的解决方案,默认情况下,选择启动解决方案时只有一个容器运行。 如果想要同时运行多个容器,可在解决方案资源管理器中右键单击该项目,并选择“设置启动项目”、“多个启动项目”,然后对要运行的所有项目将“操作”下拉列表设置为“启动”或“启动(不调试)”。

容器化项目按所需方式运行后,如果准备好将项目推送到 Azure 容器注册表或 DockerHub,则可以右键单击该项目并选择“生成 Docker 映像”以本地生成映像。

此外可以通过新的“容器业务流程协调程序支持”选项向 ASP.NET Core Web 项目添加基于 Docker Compose 的现有功能。 在解决方案资源管理器中右键单击 ASP.NET Core Web 项目,选择“添加”>“容器业务流程协调程序支持”,然后从下拉列表菜单中选择“Docker Compose”。

Visual Studio

发布改进

此版本包含以下发布改进:

  • 将 Docker 容器发布到容器注册表时,现在可以自定义映像的标记。 可以手动添加标记(默认为“最新”),或使用自动生成的标记来确保每个标记是唯一的。
  • 创建新的 Azure 应用服务时,还可以配置 Application Insights 以自动收集遥测数据。 如果选择的区域也有 Application Insights,则它默认启用。 如果选择的区域尚不包含 Application Insights,可以从下拉列表中为 Application Insights 资源手动指定其他区域。
  • 发布 Azure Functions 项目时,可以选择使用新的 Run-From-Zip 功能进行发布。

Visual Studio Tools for Xamarin

此版本包含以下 Xamarin 更新:

  • 添加了对 Xcode 9.4 的支持。
  • 创建新的 Xamarin.Forms 项目时,默认代码共享选项现在为 .NET Standard。 共享项目选项仍然可用。
  • 添加了 Android 增量生成的改进。 Xamarin.Android 利用在中间输出目录中生成的文件实现了比完整生成更快的增量生成。 以前,如果更改了项目的目标框架,它将使文件无效并在下次运行时实现完整生成。 在此版本中,现保留每个框架文件夹中的文件,这样你可以在不同的目标框架之间进行切换,并且仍可使用增量生成。 通过清理项目,你可以回收保留的文件所占用的磁盘空间。
  • 我们在 Visual Studio 2017 中添加了对 Xamarin.Mac 绑定项目的最低支持。 这样,Visual Studio 就可加载 Xamarin.Mac 绑定项目并将其识别为“已受支持”。 另外,还可以生成 Xamarin.Mac 绑定项目,不过是在本地执行生成过程而不是使用本机 Mac 工具链,因此在应用中运行或调试时,不能使用生成的 IL 程序集。

Hyper-V Android Emulator 支持

此版本现在 Windows 10 的 2018 年 4 月更新上运行时支持使用与 Hyper-V 兼容的 Google Android Emulator。 这样,你可以将 Google Android Emulator 与其他基于 Hyper-V 的技术(例如 Hyper-V 虚拟机、Docker 工具和 Hololens 模拟器等)并行使用。 现向使用 Hyper-V 的移动应用开发人员提供一款快速运行的 Android 模拟器,该模拟器始终支持最新的 Android API、可与现有的 Google Play Services 配合使用,同时支持 Android Emulator 的各项功能(例如照相机、地理位置和快速启动)。

Visual Studio

Xamarin.Android 设计器

显著改善了 Xamarin.Android 的设计器体验。 亮点包括:

  • 引入了拆分视图编辑器,它可用于同时创建、编辑和预览布局。
  • 善了 Intellisense 体验,同时提升了自定义控件的可靠性。
  • 支持对系统提供的值使用示例数据。

Visual Studio

Xamarin.Forms 预览器

当使用 Xamarin.Forms 3.1.0.583944 版或更高版本时,Xamarin.Forms 预览器现提供工具箱支持。 Xamarin.Forms 控件将在工具箱中显示,这让工具箱新手们能更轻松地找到它们。 还可将控件拖放到 XAML 代码编辑器中,从而在页面上添加控件。

Python

此版本为 Python 开发人员添加了以下改进功能:

  • Python IntelliSense 现使用 typeshed 定义为无法通过静态分析推断出自动完成的库提供更丰富的结果。
  • 试验性调试器在 15.7 预览版中首次推出,它现在是 Python 使用的默认调试引擎,为 Python 代码提供更快、更可靠的调试。
  • 增添了对 Python 3.7 的支持且附带修补程序,可实现调用附加功能、分析功能和混合模式(跨语言)调用功能。
  • 要详细了解上述功能,请务必查看 Visual Studio 15.8 中的 Python 博客文章。

迁移本地 Azure 函数设置

发布摘要页中提供的“托管应用程序设置”对话框现可显示 local.settings.json 文件中的值,且支持你将这些值迁移到 Azure 中托管的远程 Azure 函数应用。

连接的服务

对于 Azure 函数项目的解决方案,现可直接通过 Visual Studio 2017 配置 Azure Functions 的持续交付。

测试资源管理器方面的改进

选中层次结构视图中的某个分组时,测试资源管理器现显示更详细的测试状态摘要窗格(测试资源管理器的下窗格)。 该窗格现显示该分组中失败、通过或未运行的测试数量。

新的扩展性功能语言服务器协议

Visual Studio 现提供针对语言服务器协议的本机支持。 扩展作者可创建扩展,用于与现有语言服务器进行通信,从而向 Visual Studio 添加其他语言支持。 扩展用户可安装这些扩展,从而开始在 Visual Studio 中使用自己熟悉的语言(如 Rust)。

AsyncPackage 模板

扩展作者现可通过项模板创建 AsyncPackage,从而优化其扩展的性能。 要详细了解如何使用 AsyncPackage,请参阅本文档

扩展包

借助扩展包,可轻松共享自己偏好的一组扩展或设置新的带有所有扩展的 Visual Studio 安装。 利用扩展包,可创建扩展列表、将其打包在扩展中,并使用列表快速批量安装这些扩展。

命令行扩展发布

使用命令行将扩展发布到 Visual Studio Marketplace。

.NET Core SDK 2.1.400

Visual Studio 15.8 附带有 .NET Core SDK 2.1.400。 新的 SDK 功能包括:

  • 添加了 NUnit 模板
  • 添加了对已签名的全局工具的支持
  • 改进了帮助文本,使其更加清晰明了

解决了 .NET Core CLI 上的 32 个问题。 解决了 .NET Core SDK 上的 20 个问题。

源代码管理

对于 .NET Core 项目,通过文件资源管理器直接添加到项目的文件现可在解决方案资源管理器中显示正确的 Git 和 TFS 跟踪图标,而无需重新加载解决方案。

.NET 测试适配器扩展:中断性变更和弃用

.Net 测试适配器具有以下中断性变更和弃用:

  • 中断性变更:所有测试项目必须在其 csproj 中包含各自的 .NET 测试适配器 NuGet 引用。 如果未包含,在生成之后启动测试适配器扩展的发现或用户尝试运行所选测试时,项目中将显示以下测试输出:
    • 测试项目 {} 不引用任何 .NET NuGet 适配器。 测试发现或执行可能不适用于此项目。 建议在解决方案的每个测试项目中引用 NuGet 测试适配器。
  • .NET 测试框架已在 NuGet 包中发布其适配器,且已迁出 Visual Studio 扩展。 弃用了通过扩展提供的 .NET 测试适配器支持(不过仍受支持)。 这意味着可通过“工具”>“选项”>“测试”使用两个新选项。
    • 通过第一个选项,Visual Studio 只能使用它在测试程序集文件夹(由测试适配器 NuGet 引用填充)中发现的或 runsettings 文件中指定的测试适配器。
    • 通过第二个选项,Visual Studio 可“回退”至之前的行为,并为不具备测试适配器 NuGet 引用的项目搜索测试适配器扩展。 默认勾选这两个选项,因此在该版本中,默认行为保持不变。
  • 请注意,此项更改不影响非 .NET 测试适配器。

ASP.NET .NET Framework 密码支持

对于面向 .NET Framework 4.7.1 或更高版本的 ASP.NET .NET Framework 项目,现可通过右键单击项目并选择“托管用户密码”,打开源代码中不需要的密码并将其存储到 usersecrets.xml 中。

.NET Framework 4.7.2

Visual Studio 2017 15.8 版现向所有受支持的平台提供 .NET Framework 4.7.2(包括 4.7.2 运行时)。 .NET Framework 4.7.2 提供多项新功能和改进功能,还有大量可靠性、稳定性、安全性和性能方面的修补程序。

有关 .NET Framework 4.7.2 的更多详细信息,可参阅以下文章:

延迟加载以异步方式自动加载的软件包

Visual Studio 现延迟加载配置为自动加载的异步包,直到 Visual Studio IDE 完全启动且解决方案加载完毕为止。 此项更改不影响以同步方式自动加载的包。 用户可查看状态栏左下角的“任务状态中心”来监视进度。 创建 asyncpackage 的扩展作者应测试其扩展。 有关详细信息,请参阅 Improving the responsiveness of critical scenarios by updating auto load behavior for extensions(通过更新扩展的自动加载行为来提高关键方案的响应能力)。

 

 

Azure

Windows Developer Day上线:主题是人工智能和机器学习

微软今天正在举办Windows Developer Day活动。该活动每年举办两次,通常会在Windows 10重大更新上线之前举行。该活动最近一次是去年10月10日,当时公司宣布了秋季创作者更新的SDK。今天活动的主题是人工智能(AI)和机器学习(ML),微软表示在Windows 10的下个功能更新中,开发者可以在Windows应用使用预先培训的ML模型。

Azure

 

使用PC的本地资源来分析图像和视频等内容,这些模型能够提供“低延迟、实时结果”。微软还承诺提供非常低的运营成本,将尽可能减少发送给Azure的分析数据,从而减少带宽和服务成本。微软还指出第三个优势就是灵活,开发者可以选择在本地设备还是在云端处理这些数据。

Azure

ONNX是由微软、Facebook和亚马逊Web Services共同驱动的ML模型行业标准,在Visual Studio Preview 15.7版本中,开发者能够添加ONNX文件至UWP应用中,在并项目中生成模型界面。

.NET Core

微软跨平台.NET Core 2.0版发布

微软今天发布了.NET Core 2.0版本,属于一次非常大的版本迭代。主要更新方面,包括对两个关键组成部分Runtime(CoreCLR)和Framework Libraries(CoreFX,框架库)进行了完整的性能优化,由此可见,进程管理、JIT编译器以及服务器系统的体验将会更好。

.NET Core

 

同时,引入.NET Standard 2.0,使得开发人员可利用的API数量翻了不止两倍。

另外,微软还强调,.NET Core 2.0已经可以用于部署Azure Web应用。

据悉,.NET Core 2.0可以向下兼容.NET Core 1.0和1.1,可以并行而不会有任何冲突。

值得一提的是,今天,微软还发放了Visual Studio 2017 v15.3和Visual Studio for Mac v7.1。

.NET Core

PS:.NET Core是一个开源通用的开发框架,支持跨平台,即支持在Window,macOS,Linux等系统上的开发和部署,并且可以在硬件设备,云服务,和嵌入式/物联网方案中进行使用。.NET Core的源码放在GitHub上,由微软官方和社区共同支持。

云剪贴板、时间线、资源管理器升级

微软宣布为Visual Studio移动中心推出新功能

今天是微软2017年开发者大会的第二天,微软发布了一些公告。其中一个是针对Visual Studio移动中心的改进,Visual Studio移动中心是微软去年发布的云服务。虽然它是针对iOS和Android的应用程序,但今天的新功能包括针对Windows的支持,并将在今年晚些时候预览“UWP应用程序的崩溃和测试服务”。

 

这些改进包括,开发者现在可以使用Visual Studio Team Services(VSTS),Bitbucket和GitHub中的存储库构建服务,简化应用程序持续集成和传送的设置。除了Appium和Xamarin.UI测试之外,Visual Studio移动中心现在支持iOS和Android平台特定的测试框架 – XCUITest和Espresso,使用户能够在首选框架中编写测试脚本。

另外,通过分发服务,开发者现在可以将成功的构建直接推广到应用商店或Intune公司门户。Visual Studio移动中心推送服务允许开发者根据分析数据(如地理位置,网络提供商或活动)细分和定位用户。

云剪贴板、时间线、资源管理器升级

Windows 10 新功能:云剪贴板、时间线、资源管理器升级

Build大会上,微软宣布Windows 10第五个正式版定名为“Fall Creators Update”(秋季创意者更新),按计划,它将于9月推出,内部代号RedStone 3。现在,微软悄无声息的发布了新内测版,也就是Fall Creators Update更名后的第一版,版本号Build 16193。

 

云剪贴板、时间线、资源管理器升级

值得一提的是,微软今天介绍了Fall Creators Update中的几个新功能,包括“时间线”“新资源管理器”等。

前者允许跨平台处理未完成的任务(iOS和Android需要借助Cortana),后者可以从截图看到,视效发生了极大变化。

云剪贴板、时间线、资源管理器升级

新资源管理器

尤为值得一提的是,Windows 10 Redstone 3将会加入基于云的剪贴板,可以实现跨设备的复制、粘贴,Insider内测版会首先开始预览。

其实现在已经有一些软件可以实现类似功能,Windows 10未来会将其作为系统的一部分,可以在一个设备上复制某些对象,然后在另一个设备上粘贴。

当然,它们都得登录同一个微软账户。

Windows掌门人Joe Belfiore表示,这一功能不需要开发者对应用做任何改动,相关API也会完全开放。

更令人兴奋的是,它不仅仅支持不同的Windows设备,还支持Android、iPhone手机——好吧,再一次没人提及Windows手机。

Belfiore说:“秋季创意者更新到来后,Windows 10会爱上你所有的设备。”

云剪贴板、时间线、资源管理器升级

 

 

Visual Studio

微软宣布为Visual Studio移动中心推出新功能

今天是微软2017年开发者大会的第二天,微软发布了一些公告。其中一个是针对Visual Studio移动中心的改进,Visual Studio移动中心是微软去年发布的云服务。虽然它是针对iOS和Android的应用程序,但今天的新功能包括针对Windows的支持,并将在今年晚些时候预览“UWP应用程序的崩溃和测试服务”。

Visual Studio

 

这些改进包括,开发者现在可以使用Visual Studio Team Services(VSTS),Bitbucket和GitHub中的存储库构建服务,简化应用程序持续集成和传送的设置。除了Appium和Xamarin.UI测试之外,Visual Studio移动中心现在支持iOS和Android平台特定的测试框架 – XCUITest和Espresso,使用户能够在首选框架中编写测试脚本。

另外,通过分发服务,开发者现在可以将成功的构建直接推广到应用商店或Intune公司门户。Visual Studio移动中心推送服务允许开发者根据分析数据(如地理位置,网络提供商或活动)细分和定位用户。

Visual Studio 2017

微软发布Mac版Visual Studio 2017

在微软Build 2017开发者大会上,微软发布Mac版Visual Studio 2017,开发人员现在可以在Windows和Mac上使用微软的旗舰集成开发环境(IDE)来构建云,移动和网络。微软表示,开发人员可以获得一个伟大的IDE和一个单一的环境,不仅可以开发移动和网络应用程序,游戏和端到端解决方案,还可以与Azure集成和部署。

 

Visual Studio 2017

将其IDE引入到MacOS是微软的一个里程碑,因为该公司曾经在Windows上提供其工具,从而将开发商锁定在一起。随着时间的推移,微软推出了适用于Windows,Mac和Linux的Visual Studio代码,即跨平台代码编辑器。微软在2016年11月发布Visual Studio for Mac预览版。

Visual Studio for Mac通过Xamarin支持原生Android,iOS和Mac开发,并通过.NET Core与Azure集成进行服务器开发。Visual Studio 2017已经更新到版本15.2,提供了常见的错误修复以及新功能,例如返回Python工作负载,Data Science工作负载(包括R,Python和F#),并添加了对Typescript 2.2的支持。

.NET Core

微软发布 .NET Core 2.0 Preview 1

英文原文:Announcing .NET Core 2.0 Preview 1

微软在 Build 2017 大会上发布了 .NET Core 2.0 Preview 1 。

这是 .NET Core 2.0 的首次公开亮相,相比之前的版本它有很大的改进。你可以使用 Visual Studio 2017 Preview 15.3, Visual Studio for Mac 或者 VS Code 开发 .NET Core 2.0 应用程序。微软同时也发布了 ASP.NET Core 2.0 Preview 1 。

.NET Core

下载地址:

你可以在 .NET Core 2.0 Preview 1 release notes 查看此次发布的完整细节。

.NET Core 2.0 的改进

.NET Core 2.0 的进化是源于这样的愿景:

Enable you to use more of your code in more places.

  • 与 .NET Core 1.x 相比,API 增加了超过 1 倍。
  • 支持更多的 Linux 发行版
  • 在 macOS 上不再使用 OpenSSL ,改用 Apple crypto libraries
  • 支持 Live Unit Testing
  • 支持 Visual Basic
  • 支持 .Net Standard 2.0
  • Build apps that target Linux as a single operating system(以前需要指定 Linux 发行版)
Visual Studio Preview

Build 2017微软推一系列新工具和服务 让你打造更智能的应用程序

Windows 10 的月活跃设备数已经达到 5 亿。

2017 年 5 月 10 日,微软年度开发者盛会  在美国西雅图开幕。

微软首席执行官纳德拉在开幕演讲中宣布 Windows 10 的月活跃设备数已经达到 5 亿,并明确指出 Windows、Microsoft Office 与 Microsoft Azure 将共同创造超过 10 亿个机会,让开发者的创新成果可以更广泛地服务于微软客户。微软公布了一系列全新的 Azure 数据和云计算服务,用以帮助开发者快速地对现有应用进行现代化升级;全新的人工智能和 Azure 云服务,可以更好地理解用户意图并实现人机互动,从而帮助开发者轻松开发出真正的智能应用;此外,针对未来无处不在的智能云和智能边缘计算,微软还展示了多项与数据、物联网边缘计算与人工智能应用相关的创新服务。

Build 2017微软

微软公布的最新技术和服务包括:

  1. Azure IoT Edge 开启预览,这项技术能够将云计算的智能和更多优势扩展到物联网边缘设备。
  2. Microsoft Graph 扩展服务,能够将工作环境中的业务内在规律、设备数据与对现实世界复杂关联的感知结合在一起。
  3. 新技术让用户可以像在数字世界中一样在现实世界中进行搜索,在确保数据安全可靠的同时提高生产力。
  4. 服务于所有开发者的云平台,面向任何平台和设备的开发工具

生产力工具更新

  Azure Cosmos DB 发布,这一全新开发的数据库服务能够支持全球规模的云服务与数据密集型应用——从物联网到人工智能到移动计算——它能提供高性能、容错能力以及对各种数据类型的广泛支持,包括 graph 格式。它是业界第一个全球分布式的多模型数据库服务,能提供带有运行时间保障、高吞吐、高一致性的水平扩展,并能保证 99% 的个位数毫秒级延迟。作为唯一的模式自由数据库服务,Azure Cosmos DB 能为开发者带来难以置信的灵活性,它不但支持各种流行的 NoSQL API,而且还提供了五种定义清晰的一致性等级可供选择,同时能够对所有数据自动建立索引。

  在 Azure SQL 数据库基础上新增的 MySQL 和 PostgreSQL 托管服务,为开发者提供了更多的选择和灵活性,同时还能确保平台服务的高可用性,尽可能不停机以完成扩展,并可确保数据安全和数据恢复的能力。

  微软数据库迁移服务开启早期预览,这将帮助 Oracle 和 SQL Server 的用户更轻松地迁移数据并快速地对自己的应用进行现代化升级。

  Azure SQL 数据库的改进包括:

  1. 全新的托管实例开启有限预览,为用户提供 SQL Server 虚机实例层级的兼容性,让企业更轻松地把现有 SQL Server 应用迁移到 Azure SQL 数据库。
  2. 威胁检测服务正式上线,Graph 支持服务开启预览。

Visual Studio Preview

  Visual Studio 2017 for Mac 正式商用,让开发者在 Windows 和 Mac 环境之间实现无缝衔接,全面支持移动、网页和云端工作负载,并提供 Docker 工具、Azure Functions 和 Xamarin.IoT 支持功能的预览。

Azure Service Fabric 已正式支持 Windows Server Containers,通过 Visual Studio 作为工具,借助 Docker Compose 将容器化应用部署到 Service Fabric 的功能也已开启预览。微软针对几乎所有类型、所有平台容器所提供的全面支持,让开发者得以交付面向关键业务的、可扩展的应用和服务。

 DocuSign 的客户群快速扩张,现已覆盖 188 个国家和地区的 30 万家企业和超过 2 亿用户。该公司今天宣布,Microsoft Azure 成为其拓展全球业务的首选云服务,加拿大将是第一站。DocuSign 采用 Azure SQL 数据库来处理海量数字交易。

  Office 365 企业版的月活跃用户超过 1 亿,同时也进行了一些更新:

开发者将可以在 Microsoft Teams 中发布嵌入式应用。作为 Office 365 提供的一个工作用聊天工具,在 Microsoft Teams 中加入应用,将以全新的应用体验打动用户。开发者还将可以为 Teams 应用添加新的功能,例如在信息流中加入第三方推送通知、复合扩展和可以交互信息等。

微软为开发者开放了新的 Microsoft Graph API 接口,包括 SharePoint 和 Planner 的 API。Microsoft Graph 让开发者能够访问 Office 365 数据和智能,并在联系人、对话、项目、日程、流程与内容之间建立联系。这些洞察能帮助开发者打造更智能的应用,构建更聪明的工作方式。

对于已经将生产型 SaaS 应用放在 Microsoft Azure 上运行并在 Azure 网站上注册的开发者和 ISV,现在只要通过标准的 PowerApps 和 Microsoft Flow 接口,就可以将其应用中的数据和工作流自动扩展到经过授权的 Office 365 用户。为了进一步帮助 ISV 拓展业务,微软还为销售团队提供了额外的奖励,以鼓励其向企业客户销售由 ISV 开发的合格的 SaaS 应用及服务。

关于人工智能

全新升级的微软认知服务、微软机器人框架中的平台创新、深度学习工具的不断发展、人工智能与微软产品服务的持续融合,以及通过 Microsoft Graph 所呈现的智能数据洞察,微软在人工智能领域的新动向包括:

  • 微软认知服务提供了业界最多的智能 API 接口,也是唯一允许对 API 进行定制的,现在这个数字增加到了 29 个。利用这些 API,开发者能够将视觉、语音、语言、知识和搜索等智能应用加入到任何应用场景中,直接利用现成的功能或者通过定制加工,来打造自己的智能应用和机器人体验。新加入的 API 服务包括必应定制搜索、定制视觉服务、定制决策服务和视频索引。此外还有一个被称为 Presentation Translator 的 PowerPoint 插件,它利用了微软的 Translation API 接口,可以在播放演示文稿的过程中,实时地将其翻译成多种语言。认知服务实验室(Cognitive Services Labs)也已推出,它能让开发者提前尝试到尚处于早期研发阶段的新服务,例如手势识别 API。
  • 微软聊天机器人框架加入了对新的适应卡(adaptive card)的支持,开发者一次编写卡,即可用于多个应用和平台。利用微软对话机器人框架,开发者现在可以直接对接更多新渠道,包括必应搜索、Cortana 和 Skype for Business,并通过微软的支付请求 API,更快速、便捷地用自己的微软聊天机器人结账。
  • Azure Batch AI Training 是 Azure 的一项新功能,目前只提供有限预览。它允许开发者和数据科学家利用参数配置运行环境,针对多 CPU、多 GPU 或现场可编程门阵列(FPGA)等不同环境运行自己的数据模型。
  • 除了哈曼卡顿推出的内置 Cortana 的 Invoke 智能扬声器,微软还分别与惠普和英特尔达成了与设备和参考平台相关的合作伙伴关系,用以打造更多支持 Cortana 的智能设备。
  • Cortana 技能工具包开启公共预览。通过创建一个机器人并将其发布到微软机器人框架新开通 Cortana 渠道中,开发者可以为 Cortana 增添新技能。这项服务支持 Windows 10、Android、iOS,以及内置了 Cortana 的哈曼卡顿 Invoke 扬声器。Cortana 技能工具包目前只在美国可用。

今年下半年,微软将会推出一个名为 Tact 的销售体验平台,它将整合一系列的微软产品与服务,包括 Dynamics 365、Office 365、Microsoft Teams、Cortana 技能、Microsoft Graph 和 Sentiment Analysis 等,能够将任何联网设备转化为人工智能驱动的虚拟销售助理。Build 2017 大会对 Tact 的相关技术应用进行了演示。

微软中国开发者大会虚拟峰会将于 6 月 12 日召开。

Visual Studio Preview

微软发布Visual Studio 2017 Preview 15.2

微软上个月初正式发布 Visual Studio 2017。同时宣布了一个名为 Visual Studio Preview 的类似 “开发者 Insider”项目 。本周,最新的预览版本 15.2(26412.01)发布了。

Visual Studio Preview

  主要更新内容如下:

  • 新增数据科学与分析应用(Data science and analytical applications )
  • Python 开发已在所有支持的 Visual Studio 语言包中本地化。
  • 并行支持 TypeScript 编译器版本
  • 支持在 JavaScript UWP 应用程序中传递命令行调试参数。 以前可用于C#,VB 和 C ++ UWP 应用程序。
  • 多个 Team Explorer 修复
  • 可在安装,修改或修复期间更改软件包缓存位置甚至禁用软件包缓存。
  • 改进多个 F#工具
  • 根据用户反馈,CMake 集成支持 CMake 3.7.2。
  • Linux C++ 可以在调试期间改进类型可视化。
  • 修复了当 Visual Studio 2017 或更早版本安装时可能无法启动的问题。
  • 使用 Unity 开发游戏时支持 Unity 5.6

  修复问题:

  • 修复 C++ 代码中使用 typeid 运算符时调试器崩溃问题。
  • 修复使用网页项目的客户会在右击解决方案插件时崩溃的问题。
  • 修复在 .Net 核心 Web 项目中使用 HTML 编辑器时出现崩溃的问题。

像往常一样,软件巨头不建议您将此版本用于开发环境中,不过如果您好奇并想要测试的话,可以点击此链接获取最新版本。

visual_studio

塑造Visual Studio的未来

英文原文:Shaping the Future of Visual Studio

类似于 Windows Insider 计划,Microsoft 为 Visual Studio 也启动了一项提前体验计划。该计划被命名为 Visual Studio 预览,它允许任何对 Visual Studio 未来感兴趣的用户都能参与其中。Microsoft 已经为 Visual Studio 的三个主要版本(社区版、专业版、企业版)提供了相应的安装程序,它们能帮助开发者了解新特性在其工具中是如何工作的。

visual_studio

Microsoft 建议开发者选择与其安装的 VS2017 版本对应的 VS 预览版本。例如,如果使用 VS2017 社区版,则选择社区预览版。目前,VSP 中最大的新特性是添加了 Python workload。由于最后开发时间的限制,该特性被从 VS2017 发布中删除。

Python workload 为 Visual Studio 增加了对该语言的支持。在包含了 IntelliSense、Git 源代码控制管理和 Visual Studio Team Services、以及远程调试这些工具,Python 现在成为 Visual Studio 里的一等公民。

Microsoft 强调了此预览版本没有用于开发生产软件的许可证。但是,为了方便反馈和利用 Visual Studio 的新安装程序系统,VSP 可以与您当前的 VS2017 版本并行安装。Visual Studio 预览版现在就能够下载,其发布通知提供了当前版本中存在的缺陷和临时解决方案的详细信息。

GitLab Extension for Visual Studio

Visual Studio的GitLab扩展发布1.0.0.58

GitLab Extension for Visual Studio  目前是 Visual Studio 中唯一的通用 GitLab 扩展, 我们支持任何一个 GitLab 托管服务器, 扩展基于码云的 Visual Studio 扩展改造完善和拓展, 现在我们很荣幸的公布 1.0.0.58 的发布。 为什么会发布新版本?因为修复了一些 bug,并同时希望刷一下存在感。

  1. 新版本增加了在代码编辑器中右键从浏览器打开代码。
  2. 支持了 VS2017 的社区版、企业版、专业版,VS2015 的同样都已经支持。
  3. 修复了纯英文情况下遗漏的资源问题等。

GitLab Extension for Visual Studio

 

GitLab Extension for Visual Studio

GitLab Extension for Visual Studio

 

 

代码地址

Visual Studio | Marketplace

微软协作工具Teams于3月14日正式上线:目前已被3万家机构使用

微软今天宣布基于聊天的协作沟通工具Teams将于3月14日正式上线。这项服务于去年11月份启动测试,目前已经被超过3万家机构和团队使用。就像今天发布Visual Studio 2017一样,公司将会举行一场线上发布会正式发布该产品,届时企业副总裁Kirk Koenigsbauer和一位匿名嘉宾将会出席主持。

Teams

 

Microsoft Teams官方应用介绍:

可满足现代团队的聊天需求

实时灵活沟通,使每个人保持消息灵通。

● 随时查看内容和聊天历史记录

● 整个团队均可查看团队聊天和活动

● 通过私密群组聊天实现较小规模的群组对话

团队合作中心

使团队可在 Office 365 中即时访问所需全部内容。

● 可在团队工作区中即时访问所有内容、工具、人员和对话

● 尽享内置 SharePoint 和 OneNote 访问权限

● 在应用中直接处理文档

团队可信任的安全性

Microsoft Teams 可提供企业级安全性和合规性功能,不负用户对 Office 365 所望。

● 广泛的合规性标准支持

● 全天候静态及传输中数据加密

● 多重身份验证可加强身份保护

可针对每个团队定制

定制 Microsoft Teams 工作区,使其包含团队需要每天访问和使用的内容和功能。

● 添加对常用文档、网站和应用的快速访问

● 引入第三方工具(如 RSS、Trello、GitHub 和 Asana)的连接器

● 构建与 API 和其他开发工具的自定义集成

visual_studio

Visual Studio 2017 RC版更新

Visual Studio 2017 RC 版更新了。

visual_studio

一些更新内容如下:

  • 不再预览 .NET Core 和 ASP.NET Core 的开发领域(Workload),还修复了几个错误,并提高了 .NET Core 和 ASP.NET Core Tooling 的可用性
  • 团队资源管理器连接体验现在得到改进,能更容易地找到要连接的项目和存储库
  • 高级保存选项由于受欢迎,现在已恢复该功能
  • 该版本还修复了多个与安装相关的问题,包括挂起。还在安装失败时添加了一个重试按钮、消除了在开始菜单中的 Visual Studio 安装,并为离线安装创建布局添加了支持。

除了这些改进,还会注意到已经删除了 Data Science and Python Development 的开发领域(Workload)。由于会一直在 VS 发行过程中进行功能的关闭,一些组件不能满足所有的发行要求就会被移除,例如翻译为非英语语言。它们将很快作为单独的下载重新显示。F# 仍然可用于 .NET 桌面和 .NET Web 开发中的 workload。

 

点击发布主页发布说明了解更多

下载地址