本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

【j2开奖】从Visual Studio 2017谈起,解析微软技术生态进化之道

时间:2017-03-28 21:52来源:668论坛 作者:j2开奖直播 点击:
曾经被业界取笑「闭关锁国」的微软如今也走向了「改革开放」的道路,Visual Studio 2017的发布,不仅是VS二十周年的大事件,更是微软技术生态焕然一新的直观体验。以前只支持Windo

  曾经被业界取笑「闭关锁国」的微软如今也走向了「改革开放」的道路,Visual 2017/0312/210803.html">Studio 2017的发布,不仅是VS二十周年的大事件,更是微软技术生态焕然一新的直观体验。以前只支持Windows及自家产品的微软,现在iOS、Android、Mac都支持了。

  写在前面

北京时间2017年3月8日凌晨,Visual Studio 2017如期发布。今年恰逢Visual Studio二十周年,Visual Studio团队可谓诚意满满、不负众望——VS2017不仅拥有全新的模块化设计和更强的性能,功能上也是具有颇多看点和干货,绝非不痛不痒的“年货式”更新。更重要的意义在于,它折射出了微软对于业界技术趋势的最新思考,也展现出了微软拥抱开发者社区的全新姿态。

大家可能还记得鲍尔默在众人前高喊"Developers, developers, developers!"的场景,这说明微软本有着非常重视开发者社区和开发者体验的传统。然而前些年,也许是失之于封闭和捆绑,微软在开发者群体中的影响力走势低迷。将各技术产品线进行排他性整合的思维最终被证明是不受欢迎的——在这个崇尚开源的互联网时代,它反而削弱了微软各大技术平台的竞争力。

好在新任CEO纳德拉执掌公司以来,给微软带来了巨大的思维方式的转变,开放与协作迅速成为了主旋律。 崭新的公司文化帮助微软的技术生态跳出了过去的窠臼和局限,并逐渐进入了一种生机盎然的绝佳状态。本文试图通过梳理 VS 2017 的诸多特性,从编程语言及其工具体系、移动和云、容器化和DevOps等不同视角来探讨Visual Studio乃至整个微软技术栈的基因变化,解析其进化之道。

  编程语言及其工具体系

Visual Studio 2017一如既往地为多种编程语言提供了原生支持,如C#、Type/Java、C++、F#、Visual Basic等,也集成了这些语言的最新版本。

C#语言稳步发展,开始支持模式匹配

众所周知,VS的当家语言是C#。C#现已是一门多范式的主流编程语言,历久弥新,LINQ、dynamic、async/await等标志性特性使其在世界范围内拥有众多拥趸。新版Visual Studio按照惯例带来了全新的C#语言版本C#7,新增了Out变量(Out variables)、元组值类型(Tuples)、引用返回(Ref locals and returns)、本地函数(local functions)等特性。C#7的演化思路很清晰,是在C#6的基础上带来稳健的增量更新,使代更为简练,可读性和可维护性更强,进一步巩固C#主流编程语言的地位。

最值得一提的新特性,恐怕要数模式匹配(pattern matching)了。这一标志性的函数式编程范式引入C#后,巧妙地融入了原有的is关键词和switch语句,可在诸多场合大幅简化繁琐的变量声明、if语句和类型转换,凸显业务逻辑本身。

与此同时,我们还能够看到C#语言团队的谨慎和克制——因为模式匹配原本计划做得更加深入,如加入match关键词和类型分解(destructuring)等高级特性,但C#团队最终选择了暂时避免激进变化,采用了更温和更稳健的策略。这样的一种克制,对于C#这样具有较重历史负担和大量遗留代的语言来说,是一种对庞大的用户群体负责任的态度,也降低了众多C#开发者学习和升级的门槛。

Roslyn编译器为C#发展推波助澜

C#众多新特性的背后,离不开Roslyn编译平台的坚定支撑。历经数年孵化的Roslyn使用C#实现了一个现代的C#编译器,现已能完全替代原有的C++实现,真正走向了成熟。任何语言的生命力源于一个开放的、架构良好的、可维护的编译器code base,开源的Roslyn做到了这一点。像前面提到的模式匹配的类型分解,其实在Roslyn平台上实现并不困难,甚至已经有了初步的代码实现。因此,全新出发的Roslyn平台,是C#后续良好快速发展的保证,我们对C#的未来应当充满信心。

Roslyn带来的另一个好处是强大的编译器API和元数据暴露能力,也在VS2017中得以体现,提高了生产效率。在使用VS2017时不难发现,最常用的查找所有引用(“Find All References”)的结果得到了良好的格式化和语法高亮,还支持更多的展现选项;“Ctrl + .” 的智能提示组合键也变得更加强大,覆盖了更多场景,还能帮助开发者迁移代码到C#7——这些都离不开Roslyn的加持。之前类似的功能可能需要通过第三方商业扩展(如JetBrains的Resharper)才能拥有,而现在相当部分已经在Visual Studio中直接内置了。

颇受好评的Type持续快速迭代,同时支撑了新版Visual Studio中的Java工具体系

Type是微软近年来的另一个重大投入,由C#之父 Anders Hejlsberg亲自掌舵,可以理解为Java语言的一个超集。Type设计和发展的思路紧紧围绕两点:一是引入可选的强类型机制,以提供强大的编译期检查和智能提示;二是全面拥抱乃至提前实现ECMA标准,使得众多开发者可以第一时间尝鲜,不必等待浏览器的内置支持,而对标准的遵循也使得开发者的学习成本得以摊薄。

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容