一、概念 App混合開發,顧名思義,是一個開發模式,指的是開發一個App一部分功能用native構建一部分功能用html5構建,英文名叫:Hybrid App。 在幾年前就已經出現了App混合開發模式,但是真正開始流行始於2014年末,到了2016年已經很流行了,2017年將是鼎盛的一年,因為現在連 ...
一、概念
App混合開發,顧名思義,是一個開發模式,指的是開發一個App一部分功能用native構建一部分功能用html5構建,英文名叫:Hybrid App。
在幾年前就已經出現了App混合開發模式,但是真正開始流行始於2014年末,到了2016年已經很流行了,2017年將是鼎盛的一年,因為現在連銀行app都開始用混合開發了,比如招行、建行等。
二、優缺點
混合開發最大的優點是:節約成本和時間,縮短App開發周期。
最大的缺點我個人認為有兩個:一是性能不是很好,二是相容性比較差。
但隨著Android 5.0+的普及以及iOS 9.0+的普及,性能缺陷和相容性問題都在下降,也就是說如果哪一天Android最低支持版本從5.0開始,iOS最低支持版本從9.0開始了,那麼混合開發App的缺點就明顯會下降了,而這一天將在2017年末至2018年初到來。
三、工具和框架
混合開發一些開發工具和框架其實很早就有了,比如AppCan、PhoneGap(Cordova)等,他們都主張一站式開發,簡單的說,一個純html5的開發人員就可以開發和發佈Android和iOS的App了,不需要專門的Android和iOS開發人員。雖然感覺這樣開發起來很快很簡單,但是遇到問題和特殊需求的時候,就開始頭疼了,再加上框架本身也存在一定的性能消耗,在Android 5.0和iOS 9.0以下,開發出來的App就顯得很雞肋。所以依我的經驗來看,並不推薦找幾個純html5的開發人員就開始“乾大事”。
四、怎麼去做好混合開發
上面說了,找幾個純html5的開發人員就開始做混合開發,這個是不實際的。主要是因為:1、不是所有的App就用html5來做就可以滿足需求,有些特殊場景和特殊的頁面以及高性能頁面需要用到原生的支持,2、一些複雜演算法/重要信息用html5來實現和管理。
綜上,我認為以後大部分混合App以後都會朝著以下方向去努力:
1、努力做到原生部分占20%,html5部分占80%。
2、原生將實現:App主界面框架(可能含啟動頁面)、要求高性能的頁面(如聊天/視頻通話頁面)、複雜演算法/重要信息的存儲或通信。
而目前這兩年來說(2017~2018年),大部分App只能做到35%左右的原生以及65%左右的html5。
一個混合App項目的前端開發人員的分佈大概會是1:1:2.5,即:
小型項目:1個Android,1個iOS,2~3個html5
中大型項目:2個Android,2個iOS,4~6個html5
五、混合開發產生影響
1、以後幾年Android和iOS開發人員需求量將逐漸減小,而html5開發人員需求量將越來越大,而從Android或iOS轉html5的開發人員將慢慢越來越吃香。
2、html發展進程將加快,將越來越多的html框架和工具出現。
後續將寫一些混合開發的經驗隨筆
原創隨筆,轉載註明出處。