微軟換了新 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