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