Xamarin 介紹
Xamarin 是一個允許開發人員有效創建可跨 iOS、Android、Windows 應用程序的開發工具集。Xamarin是免費且開源的,遵循 MIT (麻省理工學院許可證)協議,在github上的地址為:https://github.com/xamarin 。官方網站為:http://xamarin.com
簡單的來說,Xamarin 使我們可以使用 C#,F#,VB.NET 等語言開發原生 iOS、Android、Windows 應用程序。
傳統移動開發流程
開發一個傳統的移動開發程序都會有一些流程。比如像打開IDE,拖一些控件,編寫邏輯,然后測試,發布。這些非常簡單一兩個小時就可以折騰完成。
但是,如果要開發一些大型的,商業級的移動應用程序就需要一些專業的開發流程。比如需求分析,UX 設計,UI 設計,開發,可用性測試,性能測試,以及數以千計的設備進行測試,再使用不同部署方式完成部署。
創建 UX 原型時,需要考慮應用所面向的各種平台的界面指南,這一點十分重要。
iOS 使用左滑編輯,Android 使用長按彈出編輯框,不同平台的設計語言都有差異。
設備有不同的規格,平板,手機,尺寸等,設備也需要進行適配。
確定了 UX 之后,下一步是創建 UI 設計。 雖然 UX 通常只是黑白原型,不過在 UI 設計階段中會引入並最終完成顏色、圖形等。 在良好的 UI 設計上花費時間是非常重要的,通常情況下,最受歡迎的應用具有專業的設計。
與 UX 一樣,務必要了解每種平台都具有自己的設計語言,因此設計良好的應用程序在每種平台上的外觀可能仍有所不同。
確定了 UI 之后,下一步就是開發。iOS,Android,Windows 分別需要使用不同的語言或編程方式進行實現,因此需要三種不同的開發人員,來承擔特定平台的開發任務。
測試是應用得到交付過程中一個重要的環節,一個沒有經過測試的應用,質量是很難得到保障。所以尤為關鍵。傳統開發過程中,各個平台下單元測試,集成測試,性能測試都是不同的實現細節。因此跟傳統開發相似,同樣也需要三種平台的測試人員角色,來承擔特定平台的測試任務。
Xamarin 架構
Xamarin 的核心包含以下及部分:
xamarin-android : 提供 Android SDK的原生開發包,用.NET托管語言如C#,F#等可以進行 Android 應用程序開發。github地址為:https://github.com/xamarin/xamarin-android
xamarin-macios : 提供 Mac,iOS,tvOS和watchOS的原生開發包,用.NET托管語言如C#,F#等可以進行 Mac,iOS,tvOS和watchOS 應用程序開發。github地址為:https://github.com/xamarin/xamarin-macios
Xamarin.Forms : 提供完整的跨平台UI工具包。用C#可以進行完全原生的 Android,iOS 和通用Windows平台應用程序開發。github地址為:https://github.com/xamarin/Xamarin.Forms
通過Xamarin 能減少應用程序總代碼量
從上圖我們看到,Xamarin 通過 .NET標准庫實現業務邏輯層,模型層,服務訪問層,數據訪問層,接口層,數據層。一套代碼被不同平台引用。即:多個項目共享代碼,重構操作始終更新所有受影響的引用。
Xamarin Forms 將共享代碼量提升為95%
下圖是 使用 Xamarin Native 和 使用 Xamarin Forms 開發同一寬App的代碼對比示意圖:
很顯然使用Xamarin Forms 技術進行跨平台應用開發,將共享代碼比率提升20%,達到非常恐怖的95%。
總結
如果你覺得本篇文章對您有幫助的話,感謝您的【推薦】。
如果你對 .NET 有興趣的話可以關注我,我會定期的在博客分享我的學習心得。
本文地址:http://www.cnblogs.com/hexu6788/p/9921518.html
作者博客:何旭
歡迎轉載,請在明顯位置給出出處及鏈接