APP主流開發(fā)模式分為三種:原生開發(fā)如蚜、H5開發(fā)和混合開發(fā)三種模式浅碾。那么這三種開發(fā)模式究竟有何不同呢鸟廓?下面我們就分別了解一下這三種開發(fā)模式从祝。
一、原生開發(fā)概念
原生開發(fā)是在Android引谜、IOS移動平臺上利用開發(fā)語言牍陌、開發(fā)API、開發(fā)工具進(jìn)行App軟件開發(fā)员咽。例如Android是利用Java毒涧、Eclipse、Android studio贝室;IOS是利用Objective-C 和Xcode等進(jìn)行開發(fā)契讲。
通俗點(diǎn)來講,原生開發(fā)就像建樓房滑频,先設(shè)計(jì)樓房結(jié)構(gòu)捡偏,后打地基、添加磚瓦峡迷、鋼筋水泥银伟、布置線路等。原生APP也一樣:通過代碼從每個(gè)頁面绘搞、每個(gè)功能彤避、每個(gè)效果、每個(gè)邏輯夯辖、每個(gè)步驟全部用代碼寫出來琉预,一層層,一段段全用代碼寫出來楼雹。
原生開發(fā)優(yōu)點(diǎn):
1.可訪問手機(jī)所有功能(如GPS模孩、攝像頭等)、可實(shí)現(xiàn)功能齊全贮缅;
2.運(yùn)行速度快榨咐、性能高,絕佳的用戶體驗(yàn)谴供;
3.支持大量圖形和動畫块茁,不卡頓,反應(yīng)快;
4.兼容性高数焊,每個(gè)代碼都經(jīng)過程序員精心設(shè)計(jì)永淌,一般不會出現(xiàn)閃退的情況,還能防止病毒和漏洞的出現(xiàn)佩耳;
5.比較快捷地使用設(shè)備端提供的接口遂蛀,處理速度上有優(yōu)勢。
原生開發(fā)缺點(diǎn):
1.開發(fā)時(shí)間長干厚,快則3個(gè)月左右完成李滴,慢則五個(gè)月左右;
2.制作費(fèi)用高昂蛮瞄,成本較高所坯;
3.可移植性比較差,一款原生的App挂捅,Android和IOS都要各自開發(fā)芹助,同樣的邏輯、界面要寫兩套闲先;
4.內(nèi)容限制(App Store限制)状土;
5.獲得新版本時(shí)需重新下載應(yīng)用更新。
二饵蒂、網(wǎng)頁 (HTML5)開發(fā)
H5開發(fā)声诸,是利用Web技術(shù)進(jìn)行的App開發(fā)。Web技術(shù)本身需要瀏覽器的支持才能進(jìn)行展示和用戶交互退盯,因此主要用到的技術(shù)是H5、JS泻肯、CSS等渊迁。
H5開發(fā)優(yōu)點(diǎn):
1.支持設(shè)備范圍廣,可以跨平臺灶挟,編寫的代碼可以同時(shí)在Android琉朽、IOS、Windows上運(yùn)行稚铣;
2.開發(fā)成本低箱叁、周期短;
3.無內(nèi)容限制惕医;
4.適合展示有大段文字(如新聞耕漱、攻略等),且格式比較豐富(如加粗抬伺,字體多樣)的頁面螟够;
5.用戶可以直接使用新版本(自動更新,不需用戶手動更新)。
H5缺點(diǎn):
1.由于Web技術(shù)本身的限制妓笙,H5移動應(yīng)用不能直接訪問設(shè)備硬件和離線存儲若河,所以在體驗(yàn)和性能上有很大的局限性;
2.對網(wǎng)絡(luò)要求高寞宫,離線不能做任何操作萧福;
3.功能有限;
4.APP反應(yīng)速度慢辈赋,頁面切換流暢性較差鲫忍;
5.圖片和動畫支持性不高;
6.用戶體驗(yàn)感較差炭庙。
三饲窿、混合開發(fā)(原生+H5)
混合開發(fā),是指在開發(fā)一款A(yù)pp產(chǎn)品的時(shí)候焕蹄,為了提高效率逾雄、節(jié)省成本而利用原生與H5的開發(fā)技術(shù)的混合應(yīng)用。通俗點(diǎn)來說腻脏,這就是網(wǎng)頁的模式鸦泳,通常由“H5云網(wǎng)站+APP應(yīng)用客戶端”兩部份構(gòu)成。
混合開發(fā)是一種取長補(bǔ)短的開發(fā)模式永品,原生代碼部分利用插件或者其它框架為H5提供容器做鹰,程序主要的業(yè)務(wù)實(shí)現(xiàn)、界面展示都是利用與H5相關(guān)的技術(shù)進(jìn)行實(shí)現(xiàn)的鼎姐。很多APP都是利用混合開發(fā)模式而成的钾麸。
混合開發(fā)優(yōu)點(diǎn):
1、開發(fā)效率高炕桨,節(jié)約時(shí)間饭尝。同一套代碼Android和IOS基本上都可使用;
2献宫、更新和部署比較方便钥平,每次升級版本只需要在服務(wù)器端升級即可,不再需要上傳到App Store進(jìn)行審核姊途;
3涉瘾、代碼維護(hù)方便、版本更新快捷兰,節(jié)省產(chǎn)品成本立叛;
4、比web版實(shí)現(xiàn)功能多寂殉;
5囚巴、可離線運(yùn)行。
混合開發(fā)缺點(diǎn):
網(wǎng)絡(luò)要求高:混合APP數(shù)據(jù)需要全部從服務(wù)器調(diào)取,每個(gè)頁面都需要重新下載彤叉,因此打開速度慢庶柿,網(wǎng)絡(luò)占用高,緩沖時(shí)間長秽浇,容易讓用戶反感浮庐。
文章來源于https://zhuanlan.zhihu.com/p/114709133