做手機app軟件開(kāi)發(fā)移動(dòng)開(kāi)發(fā)的程序面對這三大操作系統【 Android 、 WP 7 、 IOS 】該如何選擇一個(gè)平臺讓自己有所發(fā)展?首先西盟科技向您做一下對比。
編程語(yǔ)言
Android 應用是用 Java 語(yǔ)言編寫(xiě)的,當然還有 jni 的編程方式,使用 C/ C++ 但主要的還是使用 Java 。許多開(kāi)發(fā)人員通過(guò)熟練掌握 Java 語(yǔ)言在企業(yè)中獲得了職位 ,因此為 Android 平臺開(kāi)發(fā)應用很自然地適合這些人。就語(yǔ)言特性而言,有過(guò) C# 等熟悉面對向開(kāi)發(fā)語(yǔ)言的程序員,要學(xué)習 Android 開(kāi)發(fā)也是可以的,因為 Android 用的只是 Java 的語(yǔ)言基礎最重要還是要看思想。
IOS 應用是用蘋(píng)果的 Object-C 語(yǔ)言編寫(xiě)的, Object -C 語(yǔ)言是一種包含 Smalltalk 語(yǔ)言元素的非標準 C 語(yǔ)言。有過(guò) C/C++ 開(kāi)發(fā)經(jīng)驗的程序員可以比較好的轉向 IOS 開(kāi)發(fā),但還會(huì )在開(kāi)發(fā)過(guò)程中遇到一些小障礙。
Windows Phone 7 應用是用微軟的 C# 語(yǔ)言編寫(xiě)的,有過(guò) .net 平臺開(kāi)發(fā)的程序員想要學(xué)習 WP7 開(kāi)發(fā),相信難度不大。如果你之前是 Silverlight 、 WPF 開(kāi)發(fā)者那恭喜你,你可以很快速的學(xué)好 Windows Phone 7 開(kāi)發(fā)。
三大平臺都使用的不同的語(yǔ)言編寫(xiě), Android 之所以選擇 Java 語(yǔ)言,無(wú)非是看中 Java 編程語(yǔ)言排行首位的優(yōu)勢,想迅速的收獲大批開(kāi)發(fā)者,而另外的兩個(gè)平臺卻使用自家的編程語(yǔ)言,相信也是無(wú)可厚非。這一結果直接導致在三種平臺的開(kāi)發(fā),不能寫(xiě)一套代碼就能解決。當然有很多工具可以使它們使用不同語(yǔ)言開(kāi)發(fā) AP ,比如 Mono 可以讓 c# 跨平臺, Rhomobile 的 Rhodes 、 Nitobi 的 PhoneGap 、 Appcelerator 的 Titanium 和 Ansca 的 Corona 等。
然后這些仿真器卻不是最佳方案,因為運行一個(gè)兼容性框架會(huì )過(guò)度消耗性能在有限的移動(dòng)處理能力上,這是用戶(hù)所不能接受的。
封閉系統 VS 開(kāi)放系統
Android :眾多 OEM 廠(chǎng)商都選擇了 Android 正是看中了其足夠開(kāi)放,可供定制個(gè)性化的系統。并且 Android 有著(zhù)不僅是手機操作系統的豐富產(chǎn)品線(xiàn):智能電視、車(chē)載設備、家庭安防、家庭物聯(lián)、物流設備等。這就給開(kāi)發(fā)者更多選擇的機會(huì ),就業(yè)機會(huì )也會(huì )大大增加。但由于其足夠開(kāi)放,導致了手機平臺的不統一,規格不一,導致開(kāi)發(fā)者在開(kāi)發(fā)一款應用時(shí)所要維護的時(shí)間會(huì )比另外兩個(gè)平臺花費的時(shí)間要多得多。
IOS : 作為蘋(píng)果的移動(dòng)操作系統,該平臺一直是封閉的,是專(zhuān)門(mén)為蘋(píng)果自己的設備創(chuàng )建的,開(kāi)發(fā)人員有己知的目標設備范圍,有明確的功能和局限性范圍。而 jobs 也說(shuō)過(guò),作為 IOS 開(kāi)發(fā)者只需要考慮兩個(gè)版本的維護。說(shuō)過(guò)產(chǎn)品線(xiàn)性, IOS 有 IPHONE 、 Ipod Touch 、 Ipad 這三個(gè)平臺可以作開(kāi)發(fā),其中 Iphone 和 Ipod Touch 是一致的,而 Ipad 屏幕尺寸較大,只需在 Iphone 的基礎上調整好應用的尺寸即可,當然屏幕大小導致用戶(hù)體驗不同,對應的 AP 會(huì )也不同。
Windows Phone 7 :微軟這一系統明顯是借鑒了 IOS 的開(kāi)發(fā)模式,也是一封閉系統,他只支持兩種屏幕大小,所以要維護自己的 AP 也是比較輕松的。目前該平臺只做手機平臺而存在,市面上并沒(méi)有其他各類(lèi)的產(chǎn)品使用該系統,開(kāi)發(fā)者選擇性會(huì )小點(diǎn),但好在與 Nokia 合作市場(chǎng)不用擔心 。
學(xué)習資源和測試工具
提高開(kāi)發(fā)速度也是開(kāi)發(fā)者選擇一個(gè)平臺衡量的重要標準。
Android 是一個(gè)開(kāi)源的產(chǎn)品,有眾多的樣本應用和開(kāi)源應用提供下載,但是沒(méi)有太多中文文檔,還有文檔不全也是它的一個(gè)缺點(diǎn),但有眾多開(kāi)源應用這一優(yōu)勢學(xué)習 AP 開(kāi)發(fā)并且入門(mén)比較容易。 IDE 使用 Eclipse ,集成開(kāi)發(fā)環(huán)境有豐富的源代碼模型,而且源碼處理很好。不過(guò) Google 在處理兼容性方面還需努力,有時(shí)候插件會(huì )死掉,但這個(gè)可以忽略,重啟 IDE 即可。
IOS 蘋(píng)果向許多 IOS 開(kāi)發(fā)人員提供了眾多開(kāi)發(fā)信息,包括多媒體式,甚至是有 Iphone 或者 Ipad 的開(kāi)發(fā)者可以使用 IBOOKS 免費下載開(kāi)發(fā)書(shū)籍。不過(guò)相對于國內來(lái)說(shuō)比較心酸,都是些 E 文的東西,很難啃。 IDE 方面,因為我們沒(méi)有用過(guò),但網(wǎng)上說(shuō) XCODE 非常糟糕,用過(guò)的朋友可以說(shuō)說(shuō)。
Windows Phone 7 眾所周知,微軟在籠絡(luò )開(kāi)發(fā)者有一套手法,首先它的學(xué)習資源和文檔非常豐富。而且在我們國內文檔有分中英文文檔,入門(mén)基本不是問(wèn)題。而且有 WebCast 這個(gè)視頻教育平臺, MVP 們通過(guò)自己的實(shí)踐經(jīng)驗己視頻的方式傳授給大家,勝任 WP7 開(kāi)發(fā)基本沒(méi)問(wèn)題。 IDE 方面,這個(gè)不用我多說(shuō),有 Visual Studio 和 Expression Blend 這兩大神器。
Android 并眾多 OEM 廠(chǎng)商擁抱,特別是國內的山寨文化。未來(lái)前景將一片光明。而且它將改變很多目前的電器設備的使方式。用戶(hù)方面偏中、低,當然高端用戶(hù)也存在較之 IOS 要小。
IOS 蘋(píng)果將繼續為其添加更多酷炫功能,并且引用到其他設備上。用戶(hù)方面還是搶占著(zhù)高端用戶(hù)。
Windows Phone 7 微軟和諾基亞合作,諾基亞強大的硬件設計和優(yōu)秀的營(yíng)銷(xiāo)能力、微軟的軟件大牛,使得這一系統有很大的潛力和上升空間。
總結
如果開(kāi)發(fā)者單純想學(xué)習 App 開(kāi)發(fā),最好的選擇還是 IOS ,營(yíng)利模式比較明朗,但是 “ 須 ” 有 MAC 機才能做開(kāi)發(fā),而不是必須,但最好是使用 MAC 機開(kāi)發(fā)。對于沒(méi)有 MAC 機的同學(xué),還有在 I 系列價(jià)格居高不下的情況下,建議同學(xué)選擇 WP7 開(kāi)發(fā),雖然市場(chǎng)營(yíng)利模式不明顯,但其潛力足夠大。而 Android 因為用戶(hù)習慣了免費,除了廣告的收入基本可以說(shuō)沒(méi)有其他收入。除非公司想做多平臺產(chǎn)品推廣,例如某一 IM 軟件、某一播放器、某一看書(shū)軟件、某一微博等。
但是如果開(kāi)發(fā)者想做差異化開(kāi)發(fā),做出有競爭力的產(chǎn)品。不妨考慮一下 Android ,軟硬結合的方式可以構建出差異化的產(chǎn)品,但這條路的學(xué)習線(xiàn)路很漫長(cháng),必須上下層一起打通,沒(méi)有個(gè)幾年工夫很難成氣候。
開(kāi)發(fā)者可以想想自己需要什么,想做什么,這三個(gè)平臺都是很有發(fā)展空間的,找到自己合適的最重要。不管什么,移動(dòng)的時(shí)代來(lái)臨了。希望上述能對你投入移動(dòng)開(kāi)發(fā)有所幫助。