摘 要 本文通過全面分析App開發(fā)流程,分別是需求定位、設(shè)計(jì)規(guī)劃、編寫UI、測(cè)試反饋、發(fā)布維護(hù)這五個(gè)階段。全面分析App常見的四種功能性開發(fā)技術(shù)。分別是網(wǎng)頁加殼、網(wǎng)原混編、HTML5開發(fā)、原生態(tài)開發(fā)這四種功能性開發(fā)技術(shù)。深入解讀App三種軟件開發(fā)模式,分別是了Hybrid APP,Web APP以及Native APP這三種APP開發(fā)模式。
【關(guān)鍵詞】App開發(fā) 開發(fā)流程 開發(fā)技術(shù) 開發(fā)模式
手機(jī)作為人類生活中不可替缺的存在,已經(jīng)深入到人類生活中。在現(xiàn)在社會(huì)可以說沒有手機(jī),將寸步難行。人手一部手機(jī)已經(jīng)成為現(xiàn)代人的標(biāo)配。而由于手機(jī)的智能性、便捷性,App軟件需求的市場(chǎng)逐漸闊大。在移動(dòng)互聯(lián)智能終端的發(fā)展下,App軟件已經(jīng)到達(dá)了井噴時(shí)期。
1 App軟件的開發(fā)流程
App軟件開發(fā)雖然產(chǎn)品不同,但是軟件開發(fā)的流程是相同的。App軟件開發(fā)通常有流程有五步。分別是需求定位、設(shè)計(jì)規(guī)劃、編寫UI、測(cè)試反饋、發(fā)布維護(hù)這五個(gè)階段。
1.1 需求定位
客戶的需求是定位App產(chǎn)品研發(fā)的重要階段,只有準(zhǔn)確定位客戶的需求,才能開發(fā)出符合需求的軟件。如果一開始定位就有偏差,后續(xù)不論代碼編寫的多么簡(jiǎn)潔,界面設(shè)計(jì)的多么精美都沒有用。大多數(shù)的客戶對(duì)自己需求的想法比較抽象。這時(shí)候在需求定位時(shí)需要制定一份完善的需求文檔,了解客戶的需求信息。只有了解客戶的需求信息,才能正確的把握軟件定位。由此可見,App軟件開發(fā)最為重要的一步就是收集客戶需求,準(zhǔn)確理解客戶需求。
1.2 設(shè)計(jì)規(guī)劃
在收集客戶需求,定位需求的基礎(chǔ)上,根據(jù)客戶的需求來設(shè)計(jì)規(guī)劃App軟件。設(shè)計(jì)階段包括UI界面設(shè)計(jì)與功能性的設(shè)計(jì)。在這個(gè)階段需要根據(jù)客戶的需求來制出相應(yīng)的設(shè)計(jì)圖。這個(gè)設(shè)計(jì)圖涵蓋功能性結(jié)構(gòu)、各分頁界面、頁面鏈接邏輯等。由此可見,設(shè)計(jì)規(guī)劃是實(shí)現(xiàn)APP開發(fā)不可或缺的一步。
1.3 編寫UI
第三步編寫UI階段為實(shí)操階段。也就是實(shí)際開發(fā)App軟件的階段。在這個(gè)階段里主要就是代碼的編寫以及界面的設(shè)置。這一階段是App軟件開發(fā)完成質(zhì)量的保證期也是成果期。后期App使用的效果都有賴于這個(gè)期間。在界面設(shè)計(jì)中UI界面設(shè)計(jì)師會(huì)根據(jù)相應(yīng)需求搭配界面的配色,讓功能具象化。而代碼編寫階段程序員會(huì)考慮服務(wù)器端App端Web管理端邏輯代碼編寫。由此可見,第三階段編寫UI代碼與界面兩者都不可缺少。
1.4 測(cè)試反饋
測(cè)試反饋期是在整體開發(fā),App軟件后,進(jìn)行測(cè)試的階段。這一階段測(cè)試后會(huì)得到大量的數(shù)據(jù),根據(jù)這些數(shù)據(jù)來調(diào)整App軟件。這一階段有調(diào)動(dòng)項(xiàng)目組內(nèi)的所有人員參加。這個(gè)測(cè)試反饋階段的重要性,與前期設(shè)計(jì)規(guī)劃的重要性相同。
1.5 發(fā)布維護(hù)
App軟件在進(jìn)行測(cè)試反饋后進(jìn)入發(fā)布期。也就是進(jìn)入市場(chǎng),市場(chǎng)是檢驗(yàn)APP的最有效的手段。通過大量的用戶下載使用,找出漏洞,加載補(bǔ)丁維護(hù)App。
2 App功能性開發(fā)技術(shù)
目前App常見的有四種功能性開發(fā)技術(shù)。分別是網(wǎng)頁加殼、網(wǎng)原混編、HTML5開發(fā)、原生態(tài)開發(fā)。
2.1 網(wǎng)頁加殼
網(wǎng)頁加殼這種形式技術(shù)簡(jiǎn)單,操作方便。利用Web網(wǎng)頁上在這個(gè)基礎(chǔ)上套一層App的殼。優(yōu)點(diǎn)是成本低、耗時(shí)少,只要有一個(gè)手機(jī)網(wǎng)站模板,再加上App的殼幾分鐘就能出成果。缺點(diǎn)是效果差、體驗(yàn)差、耗流量。
2.2 網(wǎng)原混編
網(wǎng)原混編就比上邊的網(wǎng)頁加殼技術(shù)強(qiáng)一些。Web網(wǎng)頁與原生態(tài)編碼兩者混合,但是原生態(tài)代碼占比較少,一般只有百分之二十。訪問速度與效果優(yōu)于網(wǎng)頁加殼,但是網(wǎng)頁如果不對(duì)比優(yōu)化的話,效果也只提高了一點(diǎn)。
2.3 HTML5開發(fā)
這種開發(fā)形式成本應(yīng)該是原生態(tài)的一半或以下,也是更接近于原生開發(fā)的方式。手機(jī)淘寶就采用的是HTML5與原生態(tài)混編,這種形式有優(yōu)勢(shì)也有劣勢(shì),兼容性不足,在低端手機(jī)上受到了限制較多,低端機(jī)容易出現(xiàn)卡圖現(xiàn)象。手機(jī)兼容性是非常影響成本,市場(chǎng)上手機(jī)品種較多,就安卓而言,機(jī)型都有上萬多種。這上萬種如果每種的都需要調(diào)試,那將是一個(gè)浩大的工程。軟件調(diào)試比開發(fā)軟件費(fèi)用更,不是大型的公司輕易不能嘗試的。
2.4 原生態(tài)開發(fā)
最常用的開發(fā)形式,技術(shù)比較成熟。原生態(tài)app開發(fā)能夠?qū)崿F(xiàn)的功能是其他技術(shù)不一定能做到的。巧婦難為無米之炊,網(wǎng)頁開發(fā)在厲害,很多場(chǎng)景也玩不轉(zhuǎn)。原生態(tài)開發(fā)使用的編程語言是JAVA、C、C++,適合復(fù)雜的程序編寫。原生態(tài)app最具優(yōu)勢(shì)的就是它的速度快,可以直接讀取,使用多線程,在這上面開發(fā)沒有瓶頸。
3 App軟件開發(fā)模式
App軟件開發(fā)模式分別是了Hybrid APP,Web APP以及Native APP這三種APP開發(fā)模式。其中Native APP是上文提到的典型原生開發(fā)模式,而Web APP是上文提到的網(wǎng)頁開發(fā)模式,而Hybrid APP就是混合開發(fā)模式。
原生開發(fā)模式Native APP。這種開發(fā)模式也是傳統(tǒng)的經(jīng)典開發(fā)模式,是可以在本地操作系統(tǒng)下運(yùn)行的軟件。因?yàn)橐诒緳C(jī)操作系統(tǒng)下運(yùn)行在APP開發(fā)是就要注意IOS與安卓系統(tǒng)的不同。根據(jù)不同的系統(tǒng)采取不同的語言進(jìn)行開發(fā)。這種開發(fā)模能夠是軟件在平臺(tái)層上方,兼容性能,較好的利用資源,APP可以調(diào)取手機(jī)資源,實(shí)現(xiàn)本地資源的訪問。但缺點(diǎn)是這種開發(fā)模式需要的開發(fā)成本較高,后續(xù)升級(jí)維護(hù)較復(fù)雜,在用戶安裝上也有較高的要高,門檻高,不易移植。
網(wǎng)頁開發(fā)模式Web APP。這種開發(fā)模式是Web框架型的一種開發(fā)模式,究其本質(zhì)就是針對(duì)智能移動(dòng)終端特殊優(yōu)化后的web站點(diǎn), APP開發(fā)的常用技術(shù)與Web開發(fā)的常用技術(shù)相同,“都采用如HTML或HTML5、CSS3、JavaScript,服務(wù)端技術(shù)JAVA、PHP、ASP?!边@種開發(fā)模式優(yōu)點(diǎn)是跨平臺(tái),不費(fèi)精力在底層配置上,開發(fā)速度快。安裝簡(jiǎn)便,更新方便。但是這種開發(fā)模式需要云端資源,調(diào)用資源與消息推送等方面都弱于Native APP,用戶的交互式體驗(yàn)更是大大不如。
混合開發(fā)模式Hybrid APP。這種開發(fā)模式是在Web APP與Native APP 兩種開發(fā)模式的基礎(chǔ)上衍生來的。就表面接近與Native APP,而里面訪問更像是一個(gè)Web APP。這種模式整合了Native APP的交互式體驗(yàn)與Web APP跨平臺(tái)功能。 當(dāng)前移動(dòng)互聯(lián)網(wǎng)井噴的時(shí)代下這種開發(fā)模式逐漸受到重視,“一些國(guó)內(nèi)外主流的APP應(yīng)用其實(shí)就是架構(gòu)在Hybrid APP開發(fā)平臺(tái)基礎(chǔ)上,比如臉譜,百度搜索等”。
3 結(jié)束語
現(xiàn)代生活離不開手機(jī),手機(jī)智能的發(fā)展離不開App。在越來越大的市場(chǎng)需求下,App應(yīng)用程序的發(fā)展將會(huì)越來越好。本文通過全面分析App開發(fā)流程,分別是需求定位、設(shè)計(jì)規(guī)劃、編寫UI、測(cè)試反饋、發(fā)布維護(hù)這五個(gè)階段。全面分析App常見的四種功能性開發(fā)技術(shù)。分別是網(wǎng)頁加殼、網(wǎng)原混編、HTML5開發(fā)、原生態(tài)開發(fā)這四種功能性開發(fā)技術(shù)。深入解讀App三種軟件開發(fā)模式,分別是了Hybrid APP,Web APP以及Native APP這三種APP開發(fā)模式。
參考文獻(xiàn)
[1]張?jiān)聵?,劉紅.論軟件開發(fā)平臺(tái)的選擇與應(yīng)用[J].電腦知識(shí)與技術(shù)(學(xué)術(shù)交流),2007(03).
作者簡(jiǎn)介
吳兵(1980-)女,遼寧省丹東市人。大學(xué)本科學(xué)歷。講師,教工黨支部書記。研究方向?yàn)檐浖こ獭⑵矫嬖O(shè)計(jì)。
作者單位
蘇州高博軟件技術(shù)職業(yè)學(xué)院建筑與藝術(shù)設(shè)計(jì)學(xué)院 江蘇省蘇州市 215163endprint