簡體   English   中英

使用Visual Studio進行跨平台移動應用程序開發的缺點

[英]Disadvantages of cross-platform mobile app development using Visual Studio

微軟推出了他的新Visual Studio,兼容開發適用於Android,iOS和Windows的多平台應用程序。

對於開發人員來說,這是一個非常好的消息,一家大型可靠的公司生產了這樣的東西。 它可以讓生活更輕松,更多。

但是,正如你所知,當你獲得優勢時,總有一些缺點。 所以我想知道:

1)為每個平台開發本機應用程序和使用這種工具有什么區別? 與單獨使用iOS和Android的Objective-C或Java相比,有什么缺點?

2)是否有任何依賴關系,以便在不同的操作系統上運行開發的應用程序? 像.NET框架這樣的東西?

3)是否有任何性能成本? 或者像本地人一樣工作?

4)應該用這些工具開發什么樣的應用程序?

在我看來,在XAMARIN中開發android或ios應用程序並不是一個好主意。 首先是性能問題。 您無法像本機應用程序那樣實現性能。 有一些依賴項,如Xamarin將C#編譯為本機代碼,但仍依賴於Mono運行時來完成大量工作。

原生,沒有作弊 - 這是原生的。 但是有一個開銷,它不像ObjectiveC原生。 應用程序將變得更大 - 當您試圖從限制資源的移動設備中獲取最大功能時,這些小問題很重要。

你仍然需要一個用於ios的mac :-)非常強調更好的應用程序模式,如MVC或MVVM,因為用戶界面仍然是原生的。 您可以使用Xamarin編寫大約70%的可重用代碼,但最后30%或更多,具體取決於您的應用程序設計和性質,必須是本機的。

一般來說,根據我的經驗,我有更好的運氣尋找本機的支持和代碼示例,而不是Xamarin。

就像我說的那樣,你仍然需要了解ObjectiveC和Java - 即使你使用的是Xamarin。

而Visual Studio + Xamarin = $$$$$。 此外,Xamarin開發的產品雖然優於HTML5和打包的HTML5,但會花費更多。 您必須評估您的需求是否合理。

但是,在實際應用中,我認為它不是很有用。 考慮一下......如果您使用C#進行編碼,則必須將此代碼轉換為objective-C或Java,並且該轉換依賴於Xamarin SDK。 如果Apple明天在iOS的下一個版本中發布4,000個新API,那么在Xamarin API允許您調用這些本機API之前需要多長時間? 如果添加Java,則乘以2。 如果您不能等待,那么您可以在C#中編寫代碼,然后為其余代碼編寫本機代碼,但現在您支持三個代碼庫,並且Xamarin的優勢飛出窗外。

我提供了一些關於這個主題的辯論鏈接

http://willowtreeapps.com/blog/xamarin-or-native-development-tools-for-ios-android-projects/

Android Xamarin限制

https://developer.xamarin.com/guides/android/advanced_topics/limitations/

https://www.linkedin.com/grp/post/121874-5848849341191569409

https://www.quora.com/Why-would-people-build-native-mobile-applications-for-Android-iOS-using-Java-Objective-C-when-they-could-use-Xamarin-C-換所有的平台,如果許可成本,心不是-AN-問題

為什么我不推薦Xamarin用於移動開發

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM