app混合開發的意思是指在開發一款App產品的時候,為了提高效率、節省成本而利用原生與H5的開發技術的混合應用。混合開發是一種取長補短的開發模式,原生代碼部分利用Web View插件或者其它框架為H5提供容器,程序主要的業務實現、界面展示都是利用與H5相關的Web技術進行實現的。
一、概念
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、(Cordova)等,他們都主張一站式開發,簡單的說,一個純html5的開發人員就可以開發和發布Android和iOS的App了,不需要專門的Android和iOS開發人員。雖然感覺這樣開發起來很快很簡單,但是遇到問題和特殊需求的時候,就開始頭疼了,再加上框架本身也存在一定的性能消耗,在Android 5.0和iOS 9.0以下,開發出來的App就顯得很雞肋。所以依我的經驗來看,并不推薦找幾個純html5的開發人員就開始“干大事”。
四、混合開發產生影響
1、以后幾年Android和iOS開發人員需求量將逐漸減小,而html5開發人員需求量將越來越大,而從Android或iOS轉html5的開發人員將慢慢越來越吃香。
2、html發展進程將加快,將越來越多的html框架和工具出現。
五、怎么去做好混合開發
找幾個純html5的開發人員就開始做混合開發,這個是不實際的。主要是因為:1、不是所有的App就用html5來做就可以滿足需求,有些特殊場景和特殊的頁面以及高性能頁面需要用到原生的支持,2、一些復雜算法/重要信息用html5來實現和管理。
綜上,以后大部分混合App以后都會朝著以下方向去努力:
1、努力做到原生部分占20%,html5部分占80%。
2、原生將實現:App主界面框架(可能含啟動頁面)、要求高性能的頁面(如聊天/視頻通話頁面)、復雜算法/重要信息的存儲或通信。
一個混合App項目的前端開發人員的分布大概會是1:1:2.5,即:
小型項目:1個Android,1個iOS,2~3個html5
中大型項目:2個Android,2個iOS,4~6個html5