微软换了新 CEO 后变化很大,对我们团队最有利的消息就是 Visual Studio 2015 支持移动应用跨平台开发。
还记不记得很早之前,Xamarin 宣布与微软成为合作伙伴的消息。显然,Xamarin 得到了来自微软的大力支持,而微软则直接将 Xamain 融合进 Visual Studio 2015,以扭转它在移动领域的颓势。
也许你还担心这里面是否有大坑,是否还不够成熟,我现在还无法回答你,不过我相信微软和 Xamarin 会很快解决这些问题,尤其是微软,它有足够的动机去让 Visual Studio 2015 跨平台开发火起来。
所以,这只是时间的问题。
Visual Studio 跨平台开发,我认为非常的值得尝试,毕竟对于我们这个 .NET 起家的团队来说,去新组建 Android 和 iOS 开发团队的成本绝不少,而且团队这方面的技术积累也很薄弱。
如果你做过 .NET 和 Android 开发,那么看一下这个视频 https://xamarin.com/visual-studio,Wow,像不像 Windows Form 开发?终于可以解放生产力了!
Visual Studio 2015 支持几种方式开发跨平台移动应用:
- 使用 C# / F# 开发跨平台的 Android IOS WP 原生应用。
- 使用 Apache Cordova 框架开发基于 HTML 技术的跨平台应用。
- 使用 C++ 开发原生 Android 应用。
C# 开发跨平台
- 可以使用 C# 的几乎所有特性。
- 可以使用第三方 .NET 类库。
- 既可以分别为不同平台使用 Xamarin 提供的设计器设计原生 UI (所谓原生,就是使用的技术都是原汁原味的,只不过集成进了 Visual Studio 内)。
- 也可以使用 Xamarin 系统的方案,只需一份代码,就可构建跨平台的界面。
- 其它你想到的,现在几乎都可以做到,详见 Faq http://xamarin.com/faq。
实际体验了一下,因为 C# 更紧凑的语法加上 VS 的高度智能,比用 eclipse 开发效率高不少(eclipse 有些地方实在是太不智能了),项目的结构基本上和 Android Java 开发一致,从 Java 开发转过来会很顺利。
举个例子,我使用了 .NET 里的任务库开启一个异步线程,然后使用了第三方 JSON 库生成一段 JSON 后更新到界面上:
我感受到了纯粹的 C# 开发体验,没做过 Java 开发的人可知道上面的 C# 代码要是用等同的 Java 写得有多啰嗦。
iOS 方面,和 Android 的体验差不多,不过部署和调试,需要通过网络远程连接到 Mac 电脑上。
目前 Visual Studio 2015 的跨平台应用开发,是基于 Xamarin,因此你需要安装 Xamarin 套件(安装过程需要下载很多包,需FQ,网络不太好的朋友,可以下载我已经传到网盘上的离线包,自己一个一个安装 http://pan.baidu.com/s/1i328fRn )。
此外,Xamarin 也可以集成在 VS 2012 / 2013 中。
不过 Xamarin 是要收费的,虽然有免费版,但是有些限制,https://store.xamarin.com/。
不过,BUSINESS 那个算下来每个月 514 元 RMB,注册一个账户后可以免费试用 30 天,而且一个账户可以用在两台电脑上(514 元买两份 License ?待确认)。
如果这个真的够成熟的话,比起招 Android 和 iOS 两组开发人员,还是划算不少的,并且我们团队中随便一个会 .NET 的人学习几天就能上手了。
Apache Cordova 跨平台
目前还没有试过,既然是 Apache 的*项目,应该还是靠谱的,后续如果有研究,我会更新的。
以上,我觉得不错,打算后续做一些跨平台的复杂点的例子,到时候给个反馈。
Xamarin Faq:http://xamarin.com/faq
darklx