來自開發(fā)者的心聲:移動開發(fā)困難重重
2011年是移動互聯(lián)網元年,明顯感覺到整個行業(yè)在升溫,很多企業(yè)都在招iOS開發(fā)工程師和Android開發(fā)工程師,而且開出的價碼非常誘人。大量開發(fā)者蠢蠢欲動,打算放棄以前的軟件開發(fā)或WEB開發(fā),轉向移動開發(fā)。可以理解,大家都是為了那誘人的薪金嘛。
然而移動開發(fā)并不是大家想象的那么容易,具體開發(fā)當中會面臨很多困難,如果沒有很好的心態(tài),很容易在困難中受挫,甚至打退堂鼓,無功而返。
在大家進入這個行業(yè)之前,本人分享出一些自己的經驗和感悟,希望對大家都有所幫助。
***:手機平臺差異帶來的麻煩
目前市場上的手機平臺有iOS、Android、Symbian、WP7、Blackberry、Linux、MTK、BREW等,平臺之間存在較大差異,開發(fā)語言和開發(fā)標準完全不同。
選擇開發(fā)語言是擺在開發(fā)者面前的***道檻,手機端的開發(fā)語言來源于傳統(tǒng)開發(fā)語言,但是由于手機終端與PC電腦軟硬件環(huán)境的不同,導致學習和上手的周期會比較長。加上平臺廠商之間互相博弈,未來市場格局無法確定,一旦開發(fā)者選擇錯了開發(fā)語言,那么再想轉身,時間成本和機會成本都將非常高昂。
第二:環(huán)境配置和工具使用并非易事
目前網上針對不同手機平臺的開發(fā)工具數(shù)目繁多,搭建相關開發(fā)環(huán)境也難住了很多人,而且部分手機平臺開發(fā)環(huán)境對硬件有很高的要求,比如iOS,購置蘋果電腦顯然價格不菲,當然也可以在Windows環(huán)境下安裝虛擬機,但是相關配置也是有點難度。
就算我們費盡千辛萬苦搭建好了相關的開發(fā)環(huán)境,但想要得心應手的使用這個開發(fā)工具,對大部分人來說也是一件十分棘手的事情,打比方來說一個成熟的開發(fā)人員,如果想熟練使用一個新的開發(fā)工具最起碼也要花費一兩個月乃至更長的時間去研究和摸索。
第三:不同手機適配工作投入較大
移動開發(fā)的一個重要難題,就是應用在開發(fā)過程中,必須使用手機真實環(huán)境進行測試,才有可能進入商用。由于手機操作系統(tǒng)的不同,以及操作系統(tǒng)版本之間的差異,使得真機測試這個過程尤其復雜。
首先必須購買足夠多的手機,包括不同操作系統(tǒng),不同版本,不同分辨率,甚至不同廠商,這樣算下來,僅是Android手機,就需要面對Android2.0、2.1、2.2、2.3四個版本,和320*480、480*800、三種分辨率,以及HTC、摩托、三星、LG、索愛、聯(lián)想、魅族、中興、華為等數(shù)十個廠商。一般至少需要20部以上手機,才能完成必要的適配工作。如果缺失這個真機測試環(huán)節(jié),極大可能會給應用的推廣和使用埋下了一個隱患,一旦出問題將直接招致用戶的投訴或拋棄。
其次在拿到不同手機進行測試的時候,還將面臨不同手機廠商的系統(tǒng)版本差異問題,KJava應用開發(fā)時,不同廠商之間的差異是巨大的,諾基亞、摩托、三星,各有標準,這讓Kjava應用的適配工作變得非常繁瑣,大大增加了開發(fā)周期和投入。即便是標準統(tǒng)一的Android系統(tǒng),手機廠商的版本也并非完全相同,MIUI、LePhone、MEIZU,這些Android系統(tǒng)已經加入了很多個性化的東西,導致Android應用必須進行單獨適配。這過程中出現(xiàn)的很多問題,往往沒有資料可查,使開發(fā)者雪上加霜。
第四:項目掌控能力
項目經驗不足是很多開發(fā)者轉型到移動開發(fā)時面臨的最尷尬問題。開發(fā)經驗需要經歷多個項目的積累,沒有多少開發(fā)者能在實戰(zhàn)項目開發(fā)當中,扮演超人的角色,一人包攬所有模塊的開發(fā)。一個成熟的項目,必須組建一個開發(fā)團隊,由多人分工協(xié)作才能很好完成。很多開發(fā)者在經歷過幾個項目的開發(fā)之后,其實仍然局限于掌握了部分模塊的開發(fā)而已,無法掌握項目全局。面對外面誘人的高薪招聘,往往是心有余而力不足。
總之,開發(fā)者必須做好足夠的心理準備,才可加入到移動開發(fā)行列中,這樣才能更好的實現(xiàn)你的預期目標。