2011-11-24 140 views
1

我正在研究做一些移動應用程序開發的可能性,首先針對Iphone,然後針對Windows Phone和Android開發。我對.NET開發很熟悉,並且想知道需要考慮哪些選項。我已經讀了一些關於Mono Touch和Phone Gap的內容,這些優點和缺點是什麼,還有其他更好的選擇嗎?還是真的有必要學習Iphone的Objective C和Windows Phone的Silverlight?跨平臺移動應用程序開發

回答

6

看看Appcelerator Titanium。它是一個相當不錯的跨平臺的iPhone和Android應用程序的創造者。

不過,問題在於Android和iPhone(和Windows Phone)都是不同的平臺。例如,iPhone具有帶標題欄的導航控制器,而Android沒有。因此,您可以將按鈕放在iPhone上的標題欄中,但不能放在Android上。最終,即使您要編寫一次並將其部署到很多地方,您仍然可以達到爲每個平臺編寫特定代碼的目的。

個人而言,重疊不值得節省時間。它使得代碼庫變得更復雜,維護性更低。此外,如果您在本地完成所有工作,您無法儘可能多地使用這些跨平臺工具。

最後,誰不想學習新技能?當你可以學習如何在本地製作iphone,android和windows phone應用程序時,爲什麼要採用簡單/快速的方式,這可能有助於你將來的自由職業或事業。

+3

真正的非諷刺+1爲「爲什麼做簡單的事情」 - 簡單的方法往往是平庸之路。 – jrturton

0

使用跨平臺框架將使您的應用在每臺設備上看起來都不是原生的,如果您想要整個應用的品牌,這可以確定。

這意味着你只能製作一個標準的應用程序,並且不能利用每個操作系統必須提供的好東西。

我會去iPhone - > Android - >網絡手機 - > Windows Phone。以該順序。

從iphone移植到Android有它的注意事項,但使用類似的設計模式非常簡單。 Windows Phone在它的設計上更具有工業性,你可能無法讓你的頭腦發現差異。

1

PhoneGap或Titanium是快速開發非常簡單的應用程序的良好平臺。但是當你需要更深入的時候,你會發現很多陷阱。最重要的是,所有這些基於JavaScript的交叉平臺框架都非常的慢!

所以我認爲,開發跨平臺應用程序的最佳解決方案是Mono(MonoTouch和MonoDroid)。使用Mono,您可以開發iOS,Android和WP7。而你的業務和數據邏輯保持不變。 UI層,你必須爲每個平臺編寫不同的代碼。但我認爲它更好,因爲每個平臺都有自己的方法。另外,Mono的速度非常快,因爲它被翻譯成本地代碼。

但它不是免費的。