查看原文
其他

宇宙第一 IDE Visual Studio 支持 Java 了!

唐小引 CSDN 2018-11-12


惊不惊喜?意不意外?

作者 | 唐小引

出品 | CSDN(ID:CSDNNews)

北京时间 10 月 25 日 - 27 日,2018 微软技术暨生态大会(Microsoft Tech Summit)在上海世博中心举行,在第二天的 Keynote 上,微软全球资深副总裁、开发平台事业部总经理,开发届的顶级代码女神潘正磊(Julia Liuson)带来了一项颇让开发者震惊且兴奋的新服务 —— Visual Studio Live Share。这项服务不仅如之前刚刚公布时所说的能够让开发者编程协作、跨终端共同调试,跨 Windows、macOS、Linux 等不同平台地协作,以及跨 Visual Studio 及 VS Code 地写代码,更重要的是,可以直接写  Java !

至此,宇宙第一 IDE Visual Studio 终于开始支持 Java 语言,而且还有 Visual Studio IntelliCode —— 通过人工智能实现智能化编程,对上下文进行感知,给出针对性建议,以此来提高开发者编程的速度和准确性。


如何在 Visual Studio 和 VS Code 里协同写 Java?


在大会现场,潘正磊表示,“现在对于开发者来说是一个大展身手的年代,每一个有作为的企业都需要强大的软件研发能力。但另一方面,于开发者而言,这也是一个充满机遇和挑战的时代,因为新的技术不断地涌现需要始终学习。我们的开发周期越来越短,企业的生存需要软件提供它的核心价值,那么,对于开发者来说,就需要更好的工具来帮助其实现这些目标。我在微软一直从事着开发工具和平台的研发工作,一直致力于为所有开发者(无论是什么样的产品,基于什么样的操作系统,使用什么样的语言)提供最高效最敏捷的开发工具和云服务。”

为此,潘正磊领导着微软开发平台事业部针对着微软体系下的开发工具及平台进行了深度开发及优化迭代,首先便是在全球范围内广受欢迎的 IDE —— Visual Studio 和开源且轻量级的 Editor —— VS Code。

在大会现场,微软的两位工程师分别在不同的操作系统上使用 Visual Studio 2017 和 Visual Studio Code 进行了 Visual Studio Live Share 的操作演示,这项功能不仅能够帮助研发团队实时交流,还可以协调开发者同时编写、更改、调试代码。

具体表现为:在 VS Code 中打开你的 Java 项目,点击状态栏上的分享,Visual Studio Live Share 会帮助你创建一个分享链接,将链接发给你的同事。当你同事打开链接的时候,它会自动关联到他的 Visual Studio,就此,你的同事就能和你共享你的代码,并且可以自由地浏览其他的项目源文件。不仅如此,你的同事,并不需要安装任何的 Java JDK 运行环境。


并且,Visual Studio 团队深知,得到解决问题的答案,并不是给开发者最好的结果。“授之以鱼,不如授之以渔”, 所以 Live Share 还给开发者们提供了一个跟随的功能,通过它,可以看到你同事的所有动作,可以还原出来他每一步到底看了哪些代码,哪些函数。

开发者们都知道,调试才是一个 IDE 是否完整的标志,所以 Live Share 也支持调试,它可以帮助你的同事,在你的机器上启动调试进程,并且完全控制你的调试进程。不论你身在何处,通过 Live Share ,都可以把你的同事带到你的身边,帮你搞定你解决不了的问题。

对此,潘正磊如此说道:“我做 Visual Studio 已经很多年了,经常会被问到一个问题,那就是 Visual Studio 什么时候能支持 Java?今天大家第一次先睹为快。Visual Studio Live Share 其中包含了几个相当重要的特性,首先便是上述在不同的操作系统上分别使用 Visual Studio 和 VS Code 来协作;其次,通过 Live Share  可以任意调用项目中的其他文件,它不是单纯的文件共享,我们可以使用 Go to Definition 来进行代码跳转;更重要的是,它使用同一个 Debug Session,在多个不同的设备里,可实时显示变量值的变更、进行调试;最令人激动的是,它支持多种语言,不论你使用何种语言,你都可以使用它来进行团队合作。今天我们在此演示的是 Java,但对 Python、C# 等语言都有非常强大的支持,因此这个功能并不局限于某种语言。”

潘正磊继续讲道:“Live Share 功能虽然是为团队协作而开发,但特别高兴的是,截至目前已经看到全球的用户有一些非常创意的使用方法与应用场景,比如在许多地方老师会用它来实现远程教学,以及一些企业用 Live Share 来面试新员工等等。”


智能化编程的 Visual Studio IntelliCode


为了提高开发者们的效率,微软还推出了 Visual Studio IntelliCode 智能代码辅助开发服务。

笔者相信,很多开发者已经无数次地使用过 IDE 中代码补全的功能。Visual Studio IntelliCode 就是由 AI 技术支持的增强版自动代码补全,但它不止于此,还可以识别出重构中的遗漏点、误用的变量、非规范的变量名等,并能对代码进行自动化的分析与审核。

IntelliCode 能够精准地对上下文进行感知,以此来给出非常准确的推荐。在自动完成下拉中,出现的提示,不再是按字典序的排列,而是一个推荐给开发者的最佳选项。

颇引人注目的是,IntelliCode 还会从开发者的代码中,分析出代码的风格以及编码习惯,当开发者提交或浏览代码时,它会自动扫描代码,找出其中不一致的地方,然后给出针对性的建议,由此极大地提高写代码的速度与准确性。


潘正磊表示,“IntelliCode 只是智能化编程的第一步。我们的愿景是充分运用人工智能来提升开发人员的编程效率和代码质量,因此我们正在探索更多场景并研发出相应的 AI 模型。比如如何通过机器学习来发现经常产生的 Bug 以此来避免开发者重蹈覆辙,以及用 AI 来评估变更风险,如果风险很小实现代码自动提交,风险非常大时则推荐一个最为合适的 Reviewer 来确保是否能够达到合格等。”


越来越开放的微软:不仅是 Java、Python,还有 OC、Swift、React Native 等


同时,面向 iOS、Android App 开发,Visual Studio 还退出了 App Center,将原来需要借助 Xamarin 的 HockeyApp、Xamarin Insights 及 Azure 应用服务完成的 6 项功能整合成为一项服务,由此大幅提升了开发者面向 iOS 及 Android 开发、测试到发布应用的自动化程度。

通过 App Center,开发者可以在云端开发 Objective-C、Swift、Java、Xamarin 和 React Native 应用,并且,App Center 能够自动对数千种设备进行适配测试,快速将应用发送给测试者或者直接发布到应用商店,并帮助开发者监测和收集故障报告,所有这些程序都能以自动化的方式高效完成。


微软爱开源:收购 GitHub 后


今天,微软正式完成了 75 亿美元收购 GitHub 的交易,微软企业副总裁 Nat Friedman 正式成为了 GitHub CEO。

犹记得 6 月消息刚出之时,国内外的开发者们纷纷反对,尽管微软已经连续三年蝉联了 GitHub 上最多员工参与开源项目,但却仍然存在不少质疑,担心 GitHub 被微软收购后会扼杀掉开源的活力。对此,在接受 CSDN(ID:CSDNNews)等采访时,潘正磊首先肯定了被微软收购后的 GitHub 开源的属性“绝对不会”发生变化,GitHub 依然独立运营,随即说道:“当我们宣布收购 GitHub 时,在美国热门的技术社区上的讨论主要分三类,一、不相信所有大公司;二、用过去的眼光来评价微软,比如基于微软在 10 - 15 年前做过的事来评判究竟能不能信任微软;三、很多开发者能够看到微软在近几年来为开源社区做了非常多的进步和贡献,事实上在微软宣布收购 GitHub 后,尽管 GitLab 有一个星期的流量增长,但我们也看到了 GitHub 当时的用户增长数远远超出了日常水平,而微软也在 GitHub 上收获了大批拥护者。因此,希望大家不要用一个过去的眼光来看微软,而是用现在的行动来看待微软。”

另外,潘正磊还谈到了前不久微软加入 OIN(Open Invention Network,开放创新网络)将 6 万多专利贡献给包括 Linux 在内的所有开源专利联盟的成员。“只要你是 OIN 的成员,就可以免费试用微软贡献的所有专利,这就是我们开源的决心。”

而另一方面,对于中国开源,潘正磊讲起了一个发现,那就是今年在 GitHub 报告中看到中国在开源领域已仅次于美国名列第二,“在中国有非常多的开发者参与到开源项目中,这真的是一个非常好的趋势。很高兴看到诸如腾讯、阿里等顶级的互联网公司也开始将企业内部的技术开源,这起到了非常好的领头作用,希望更多的中国企业能够加入开源。而微软在中国经营开源已有很多年,比如 2014 年便与几大公司及社区联合成立开源社,扶持各个开源项目,同时在支持社区的角度,微软已经贡献了很多的开源项目,在中国也做了很多扶持开源社区的工作。”

不过,针对国内开源项目的使用,潘正磊有一点建议,那便是“中国的开源社区需要与国际更加接轨,要形成一个观念 —— 不是说开源项目就等于可以随便使用,明晰开源许可协议。国内有一些大的云服务公司没有很好地遵守相应的 Licence。这可能是大家对于开源的认识存在一些误区,开源并非是可以任意使用源代码,还需要明确其许可协议是什么类型,诸如 GPL、BSD、MIT、Mozilla、Apache 等的区别。”


人工智能、区块链、IoT 热火朝天,客户端开发者何去何从?


在大会现场,笔者与潘正磊女士聊起了一个国内技术生态的问题,那就是近两年人工智能的爆发让众多开发者在投递简历时对于算法等 AI 领域的岗位趋之若鹜,直接导致了算法供大于求而客户端稀缺的局面。譬如此前今日头条便在发给候选人的邮件中直接点明“目前算法工程师简历已远超需求,而 Android、iOS 简历非常稀缺,后端、前端、测开和大数据也供不应求”。

对此,潘正磊分享了自己的见解与建议:“中国的趋势现状似乎与全球完全相反,在美国想招数据科学家简直是难上加难,都是巨头公司砸钱抢人的模式。其实从全球趋势来说,所有的开发工程师都是稀缺的,至少存在上百万的缺口。但是就整体的技术趋势而言,无论开发者原本的专业领域是什么都需要保持始终学习的状态,微软在今年的 Build 大会已经提到,未来几年,每一个开发工程师都需要具备帮助组织或团队进行智能化开发的能力,不是每个人都需要成为数据专家,但简单的 AI 算法应该作为基本能力掌握,比如在三十年前没有人懂得 DataBase 是什么,但现在很多开发者都了解一些数据库的知识。”

“而微软一直在做的,也是通过开发工具和框架不断地降低技术门槛,比如就移动开发,微软在通过 Xamarin、Visual Studio 等的不断延伸降低难度,针对物联网开发,有专门的物联网开发套件,而大数据开发有 R、Python 开发功能,AI 有 Visual Studio Tools for AI 及 ML.NET(作者注:微软开源的基于 C# 的机器学习库)。”

【完】



微信改版了,

想快速看到CSDN的热乎文章,

赶快把CSDN公众号设为星标吧,

打开公众号,点击“设为星标”就可以啦!


征稿啦

CSDN 公众号秉持着「与千万技术人共成长」理念,不仅以「极客头条」、「畅言」栏目在第一时间以技术人的独特视角描述技术人关心的行业焦点事件,更有「技术头条」专栏,深度解读行业内的热门技术与场景应用,让所有的开发者紧跟技术潮流,保持警醒的技术嗅觉,对行业趋势、技术有更为全面的认知。

如果你有优质的文章,或是行业热点事件、技术趋势的真知灼见,或是深度的应用实践、场景方案等的新见解,欢迎联系 CSDN 投稿,联系方式:微信(guorui_1118,请备注投稿+姓名+公司职位),邮箱(guorui@csdn.net)。

推荐阅读:


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存