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