回顾build2016:Xamarin与移动开发DevOps

Build 大会第二天,Scott 宣布Xamarin 将集成进 Visual Studio,并提供免费版。Xamarin 是先进的跨平台移动应用开发工具,能够使用统一的编程模型开发 iOS、Android 和 Windows UWP 应用程序。此前它一直是收费的,还挺贵的——二月刚被微软收购,在本次 Build 大会上,即宣布会集成进 Visual Studio,包括免费的社区版本。

Visual Studio 2015 中已经支持了基于 Apache Cordova 开发 Hybrid 移动应用。但这两年,经过了著名的 Facebook 将 HTML5 应用程序向原生应用的改写这样的不成功案例之后,社区越来越对 Hybrid 应用程序的兼容性、性能和安全性等方面存在一些疑虑,所以Hybrid 应用方案往往只在一些局部会适当加以运用。

Xamarin 则是完全不同的工具,它是已被大量案例证明是可行的原生移动应用开发方式。运用 Xamarin 能够开发直接调用设备 API 的原生应用程序,它还提供了完整的界面设计器(包括故事板),并且这次还将带来运行在 Windows 上的 iOS 模拟器,这样就能做到完全就不用 Mac 就能开发 iOS 应用了。目前 Xamarin 在国内还没有受到大量的关注和运用,但随着其集成进免费的 Visual Studio 社区版,Xamarin 一定会成为移动开发的重要工具。

另外,Xamarin 线上还提供了云测试服务,其中包含上千种机型的测试环境可用于运行自动化测试。而且这套线上服务将会与免费的 Visual Studio Online 服务集成,那样整个移动开发的 DevOps 也就齐活儿了。

| 应用程序新方向:.NET Core 和 UWP 应用程序平台

.NET Core 要火,相信我。因为 .NET Core 是个新兴事物,它是微软新开发出来的新项目,它从一开始就是开源、跨平台的,它完全是基于社区协同开发的,代码就托管在 Github 上。具体来说,它是一个轻量级、模块化、向面云的新平台;与以往完整的 .NET 运行时不能直接兼容;直接使用最新版本的 C# 语言和工具链;汲取了完整的 .NET 运行上一些有名框架的重要特性,剔除了那些过时的、过度抽象的、与特定操作系统和软件绑定的特性。可以说,.NET Core是一个“脱胎换骨,重新做人”的新事物。

社区中支持 .NET Core 的各种第三方工具也在快速地增长,已经有支持它的 Docker 镜像和 Yeoman生成器等工具,我们可以直接使用 Sublime Text 这样的编辑器来开发 .NET Core 应用程序,而且JetBrains 已经在为它开发跨平台IDE 了。

.NET Core 应用程序的结构与 Node.js 等典型的轻量级应用很类似,都是运行时+应用程序+第三方程序包 的形式,它的运行时只有 10 M 大小。本次 Build 2016 大会期间,微软在展示各种 Web 应用的 Demo 时都已经默认采用 .NET Core 了。

在 Windows 平台上,微软展示了他们持续打造“通用应用平台”(UWP)的动作,比如将提供从 Win32 应用程序向 UWP 应用的转换工具。开发 Windows 应用一直以来都有五花八门的技术,但现在 Windows 平台的终端除了 PC,其他类型的设备也多了起来。于是微软开始推介这样一个新的概念,希望开发者能够“一次开发,到处运行”,兼容性的部分交给 Windows 来解决。同样,微软现在公开展示的应用程序也尽量地改为了 UWP 应用程序,连上面提到的 Ubuntu 子系统中的 Bash 终端都以 UWP 应用程序的形式提供。

.NET Core 这个没有历史包袱的新平台,加上 C# 这样优秀的编程语言,想不火都难;而 UWP 作为微软主推的应用程序模型,对于面向 Windows 用户的应用程序来说,是一个明确的方向。

移动信息化交流QQ群:一号群:211029692 二号群:344692795 CIO交流群:316076815(需认证)