跨平台与云端创新,为企业和开发者开辟更广阔的未来



微软公司  全球资深副总裁 开发平台事业部  潘正磊

从制造业到零售业,从市场营销到客户关系,数字化转型正在给各行各业带来巨大的变革和冲击。面对云计算、大数据、社交和移动计算,企业需要更主动地加速自身业务模式的转变,而开发者和开发团队将在这一转变过程中发挥至关重要的作用——开发团队的创新能力,决定了企业未来的竞争力;开发团队的交付能力,决定了企业面对竞争的敏捷性与灵活性。

一个月前,微软在 Build 2016 开发者大会上公布了一大批创新技术、开发工具和云服务,希望能以此助力开发者和企业在数字化转型中占得先机。今天,我很高兴能够与数百位中国本土开发者和企业合作伙伴齐聚一堂,共同探讨以 Xamarin、.NET Core、微软云 Azure 以及 DevOps 开发运维一体化,为企业应用开发带来的全新可能。

Xamarin,为.NET 开发者创造跨平台发展的更多可能

微软 3 月完成收购 Xamarin 是海内外开发者共同关注的话题,这也是微软为.NET 开发者拓展跨平台开发前景的重要举措。各个版本的 Visual Studio 都将全面整合 Xamarin 功能,包括免费的 Visual Studio Community 版,此外还有供 Mac 用户免费下载的 Xamarin Studio Community 版。

最新数据显示,Visual Studio 的市场占有率已经达到 35.6%,是全球开发者最喜爱的开发工具,拥有最大规模的开发者社区。因此,在 Visual Studio 中整合 Xamarin 将为我们的开发者带来最广泛的便利,降低了每位开发者为每个平台开发应用的门槛——在 Visual Studio 里,用户就可以直接用 C#语言为 iOS、Android、Windows开发真正原生体验的应用——只用一种工具、一种主要编程语言即可完成跨平台应用的开发,对企业开发来说,这将大幅降低了开发团队的技术成本,并提供良好的项目与代码管理基础。

Xamarin 的 Mono Project 和 SDK 将会开源,包括运行时、类库和命令行工具,它们作为 .NET 基金会的一部分陆续推出。因此,开发者和企业现在可以无后顾之忧地利用.NET 运行时为移动、桌面或者云环境开发软件、嵌入设备或者游戏引擎,也让 C#可以更简单地整合到 iOS、Android、Windows,乃至 Xbox One 以及更多面向未来的应用平台中去。

Xamarin 的 SDK 将作为.NET 基金会的一部分逐步开源,其中在刚刚结束的 Evolve 2016 大会上,微软宣布将 Xamarin 的运行时开源;而其它的类和命令行工具也将在未来几个月陆续推出。此外,微软还在 Build 2016 上宣布 Mono 将遵循 MIT 许可协议,此举扫清了开发者在应用开发上的法律障碍,使其可以方便用于各种开发场景,包括嵌入式应用以及在游戏和其它应用中嵌入 Mono 作为应用引擎。

在全球范围内,Xamarin 已经服务于 1.5 万家企业客户,在中国也得到了开发社区的广泛的关注。微诊集智(vZhen)是一家互联网医疗服务创业企业,他们通过“微诊患者综合服务平台”将院后服务随访拓展成了全面的疾病和健康管理服务解决方案,以云端服务和移动应用搭建起了医院、医生、患者多方参与的医院信息化和患者健康管理平台,目前已经服务数个主要医疗单位的上千位医生,覆盖十余万患者。微诊集智从两年前成立时起采用了 Xamarin 的跨平台开发技术,以 Visual Studio 和 C#为基础开发跨平台的移动应用。通过简化、优化跨平台开发部署流程,Xamarin 帮助这家只有 30 人的初创企业大大提升了研发效率,节约了一半的人力和时间成本,让小公司也有机会发挥更大的创新潜力。

.NET Core 开源框架,以前后端一致开发倍增生产力

.NET Core 是今年的 Build 大会的另一个热点。自2014 年微软宣布.NET 开源起,就在全力推动.NETCore 运行时的跨平台发展,让广大开发者可以在 Windows 以外的系统环境中,复制或者延续他们在.NET 技术上的投入和积累。

.NET Core 是在.NET 框架最核心的部分,在包括了编程语言的编译器及运行时的基础上,加入了对 ASP.NET Core 以及对通用 Windows 应用的支持,重新打包成一个轻量化、模块化的框架。.NET Core 从一开始就是为开源、跨平台设计的,所有 .NET Core 的源代码均已公开在 GitHub 上,而且一直是人气很高的项目。

.NET Core 的跨平台特性让.NET 得以运行于 Linux和 Mac 系统环境中,因此可以在跨平台开发场景中,实现前后端的开发一致性,提升开发效率。网易游戏最新推出的移动游戏《绝代双骄 OL》在开发过程中即得到了.NET Core 的支持。据网易公司雷火游戏事业部产品总监周锋介绍,这款游戏采用了同样是.NET 基金会成员的 Unity 引擎开发前端(客户端),而通过.NET Core 框架开发后端(服务器端)并顺畅运行在网易的 Linux 服务器上。以前,需要分别使用 2 种开发语言进行前端和后端的开发,其中需要大量的业务逻辑转换工作来实现前后端的对接。而现在,.NET 开源直接实现了前后端的一致开发,从而将人员和时间减少了 30%,而且其单服务器支持1 万人同时在线游戏的性能,也很好地满足了游戏运行的需求。

微软云 Azure,带来云端的企业应用开发新体验

面向“移动为先,云为先”的世界,微软不但打造了移动端的跨平台开发工具,更在云端提供了多样化的服务,帮助开发者实现高效的创新。

微软是唯一能够全面满足每家企业、每个开发者多样化需求的云服务提供商——从核心的基础设施服务(IaaS)到平台服务(PaaS),再到软件即服务(SaaS)——并且支持使用任何语言为任何平台进行开发。微软云 Azure 已经覆盖全球 30 个区域。微软云 Azure 的超大规模优势让开发者和企业能够集中精力去创造新一代的精彩应用,而完全不必为底层的云基础设施担心。这些优势让微软云成为今天和未来企业的理想选择——目前已经有超过 85% 的“财富 500 强”企业采用微软云服务。

Azure App Service  助力跨平台移动应用的后台开发

移动应用开发人员最头疼的问题就是如何能以统一的后台架构,支持多种移动端设备和操作系统。基于微软云的 Azure App Service 提供了一套完整的云服务解决方案, 同时将 Web 访问入口、数据离线同步、用户行为分析等移动应用中常见的需求都打包在一起,提供了统一的底层计算资源。而最大的好处是,开发人员可以选择自己喜欢的开发语言,C#、 Java、 PHP、 Python 都能 一网打尽。

Azure IoT 服务构建端到端的物联网解决方案

要构建端到端的物联网解决方案,需要涵盖多种不同的技术:从设备的连接、管理到数据接收和数据流的处理,从结构化数据到非结构化数据,从数据存储到数据处理,从事件监测到数据洞察——这些都需要掌握大范围架构与服务设计的能力。针对物联网应用场景,微软云 Azure 提供了 Azure IoT Hub、Azure IoT Suite、流分析、HDInsight 等一系列相关功能和服务。以此为基础,我们提供了完善的物联网解决方案架构设计模型,包括如何设计命令与控制,如何设计实时监控的数字仪表板机制,以及如何利用 HDInsight 与机器学习来萃取数据洞察等。微软的技术和经验可以帮助企业研发团队大幅简化构建端到端物联网平台的过程。

Azure Media Service 实现端到端的流媒体服务 

Azure Media Service 是一组功能丰富的流媒体服务,可以帮助企业建立自己的在线流媒体平台,用于现场直播或是按需点播服务。Azure Media Service 提供了涵盖多媒体编码、动态封装、DRM 版权保护、媒体索引和搜索以及跨播放器适配的众多技术与功能。利用这项云服务,无需成为专家也能按照实际业务需求,搭建起自己的互联网流媒体服务。

项云服务,无需成为专家也能按照实际业务需求,搭建起自己的互联网流媒体服务。

HDInsight 加速云端的社交媒体大数据分析

微软云 Azure 提供了一系列可以用来采集、储存和处理社交分析数据洞察的云服务,包括PaaS 级的 Azure Mobile Services、AzureWeb Sites、Azure Social Engagement、HDInsight 等。对这些服务进行整合和衔接,可以实现基于 Azure 的微信社交分析架构,以 HDInsight 对社交数据的分析和处理为基础,企业将获能更好驾驭数字市场营销场景的市场洞察。

以 DevOps 开发运维一体化,打造灵活、高质量的交付能力

移动互联网的快速发展给企业应用开发带来了极大的压力,“快速迭代”、“敏捷开发”成为业界关注的热词,DevOps,开发运维一体化,也因此成为软件工程领域最流行的趋势。

今天企业的创新想法与优势,需要开发团队更快速地实现出来;而开发团队也认识到,当他们实现敏捷转型之后,将在企业中扮演更重要的角色,成为互联网竞争中的关键价值。因此,DevOps,不仅是单纯地缩短开发过程、实现频繁的交付,更要随时听取运维部门、业务单位与客户的反馈,对产品进行快速敏捷的改进和更新。

为了帮助开发与运维团队顺畅对接,实现持续交付、持续监控、持续学习与进化,在 Visual Studio 2015 的工具与服务器中增添了许多革新性的功能。以Scrum 的敏捷迭代开发方法为基础,能够快速帮助用户推进软件开发过程。从敏捷项目规划、统一进行版本管理、版本比较、进行各种测试与质量管理、自动化布署与交付,推进到开发过程与运维阶段的双向管理,落实软件开发的生命周期管理,提高团队协作效率,实现开发运维一体化,深化项目管理透明性与可预测性。

在 DevOps 开发运维一体化的过程中,微软 Azure 是重要的加速器,它提供了云端的测试环境,可以方便地进行压力测试、运维监控等功能。借助 Visual Studio Team Services,开发者更可以利用云端的开发平台,加速 DevOps 转型。

针对跨平台移动应用的 DevOps,Xamarin 的跨平台移动研发技术体系已经融入 Team Foundation Server,可以覆盖从敏捷的迭代规划、增量交付、持续集成、自动化测试到交付部署的全过程。例如,利用 Xamarin 的测试云平台,开发者可以针对全球各地市场上销售的 2,300 多台不同设备,对其应用的兼容性进行快速测试——而且,这套线上服务将会与云端的 Visual Studio Team Services 服务进行集成。

今天,微软的使命是予力全球每一人、每一组织成就不凡。而微软开发平台要做的,是为每一位开发者、每一个平台带来灵活、高效、前景广阔的新工具、新服务、新可能。

从 Xamarin 到.Net Core,从微软云上的开发平台和服务,到创新的 DevOps 模式,我们希望能为全世界的开发者、合作伙伴和企业提供更广泛的选择与灵活性,让每个人都能充分发挥创意,共同开辟更广阔的未来。