王立和
摘要:隨著移動(dòng)互聯(lián)網(wǎng)的不斷發(fā)展進(jìn)步,移動(dòng)應(yīng)用程序正在不斷開發(fā),移動(dòng)應(yīng)用開發(fā)模式也在不斷地變化,就目前來看,高效,跨平臺(tái)是當(dāng)前移動(dòng)開發(fā)最為關(guān)注的問題。本文就是首先針對(duì)軟件開發(fā)中C/S結(jié)構(gòu)和B/S模式進(jìn)行了分析,然后討論了當(dāng)前主要的三種移動(dòng)開發(fā)模式,并對(duì)其進(jìn)行了分析和闡述,希望對(duì)未來移動(dòng)應(yīng)用的開發(fā)效率和性能的提高有所幫助,并促進(jìn)移動(dòng)應(yīng)用開發(fā)方式的進(jìn)一步發(fā)展和進(jìn)步。
關(guān)鍵詞:C/S;B/S;Native App;Web App;原生開發(fā)
一、引言
隨著移動(dòng)互聯(lián)網(wǎng)的飛速發(fā)展,移動(dòng)應(yīng)用技術(shù)和云技術(shù)給我們的生活帶來了飛速的變化,移動(dòng)設(shè)備無論從硬件的發(fā)展和軟件的實(shí)現(xiàn)都有了質(zhì)的飛越,而且所具備的功能越來越健全和多元化。在移動(dòng)互聯(lián)飛速發(fā)展的同時(shí),各大移動(dòng)設(shè)備廠商的齊頭并進(jìn),競爭激烈,給移動(dòng)互聯(lián)帶來的強(qiáng)大的競爭力,同時(shí)也帶來了移動(dòng)應(yīng)用開發(fā)的瓶頸,因?yàn)楫?dāng)前移動(dòng)設(shè)備操作系統(tǒng)眾多,他們?cè)谙嗷ブg并沒有一個(gè)統(tǒng)一的接口,所以他們之間沒有良好的兼容性,同樣一個(gè)APP程序,如果要在移動(dòng)設(shè)備上推廣,至少要開發(fā)多個(gè)版本(當(dāng)前Android和IOS是主流),這對(duì)于移動(dòng)應(yīng)用程序的開發(fā)以及維護(hù)都會(huì)帶來高昂的成本,而且程序的下載和頻繁的升級(jí)都會(huì)對(duì)用戶帶來極大地困擾。
二、軟件開發(fā)模式的變遷
在當(dāng)前軟件開發(fā)模式中,C/S開發(fā)模式和B/S開發(fā)模式是當(dāng)今世界開發(fā)模式技術(shù)架構(gòu)的兩大主流技術(shù)。C/S軟件開發(fā)模式是美國 Borland公司最早研發(fā),B/S開發(fā)模式是美國微軟公司研發(fā)。目前,這兩項(xiàng)開發(fā)模式被世界所認(rèn)可,而且被普遍掌握。由于這兩種技術(shù)都有自己一定的市場份額和客戶群,所以他們有自己的特點(diǎn)和適應(yīng)環(huán)境,也都有相對(duì)應(yīng)的不足之處, 但是無論怎樣,互聯(lián)網(wǎng)始終是難掩的發(fā)展潮流。在國外軟件市場,大多數(shù)大型軟件已經(jīng)是B/S結(jié)構(gòu),或者正處于C/S結(jié)構(gòu)向B/S結(jié)構(gòu)的過渡時(shí)期。國內(nèi)的大多數(shù)軟件企業(yè)也已經(jīng)開始向B/S結(jié)構(gòu)轉(zhuǎn)變。B/S結(jié)構(gòu)下的大型管理軟件,已經(jīng)是軟件市場的主流軟件。
自從上個(gè)世紀(jì)九十年代,Windows 3.0發(fā)布。基于窗口、按鈕、圖標(biāo)和鼠標(biāo)的圖形界面(GUI),迅速征服了全世界個(gè)人計(jì)算機(jī)用戶。將原有DOS字符模式下的應(yīng)用程序移植到GUI環(huán)境,C/S軟件開發(fā)模式的概念出現(xiàn)并且成為軟件開發(fā)的主流。
但是進(jìn)入二十世紀(jì)之后,Internet互聯(lián)網(wǎng)的飛速發(fā)展給GUI程序提出了新的挑戰(zhàn)。這些程序大都基于C/S結(jié)構(gòu)下,這種模式將程序應(yīng)用分為兩部分,一部分應(yīng)用是服務(wù)器負(fù)責(zé)數(shù)據(jù)管理,另外一部分是客戶機(jī)完成與用戶的交互任務(wù)。雖然在C/S結(jié)構(gòu)下軟件具有強(qiáng)壯的數(shù)據(jù)操縱和事務(wù)處理能力。但隨著企業(yè)規(guī)模的日益擴(kuò)大,軟件程序的復(fù)雜程度不斷提高,C/S結(jié)構(gòu)也開始暴露出了它的缺點(diǎn)。比如開發(fā)成本較高,用戶界面風(fēng)格不一、使用繁雜、不利于推廣使用,維護(hù)復(fù)雜、升級(jí)麻煩等。 為了解決這些出現(xiàn)的問題,基于Internet互聯(lián)網(wǎng)的B/S技術(shù)應(yīng)運(yùn)而生,它是有計(jì)算技術(shù)以來最穩(wěn)定的技術(shù)平臺(tái)。
三、移動(dòng)開發(fā)模式的分析
當(dāng)前,移動(dòng)應(yīng)用的開發(fā)模式與九十年代的軟件開發(fā)模式極其的相似。當(dāng)前移動(dòng)終端中的操作系統(tǒng)包括iOS、Android、WindowsMobile 等等多種操作系統(tǒng),當(dāng)前的移動(dòng)應(yīng)用開發(fā)人員必須利用適合該移動(dòng)終端的操作系統(tǒng)的開發(fā)方式,同樣一個(gè)移動(dòng)應(yīng)用程序,針對(duì)不同的操作系統(tǒng),開發(fā)不同的應(yīng)用版本,而且都是采用C/S結(jié)構(gòu)的開發(fā)方式。相對(duì)應(yīng)的B/S結(jié)構(gòu)的開發(fā)模式由于網(wǎng)速和硬件設(shè)備等等限制,未能成為開發(fā)的主流,下面我們來分析一下當(dāng)前幾種主要的移動(dòng)開發(fā)方式。
目前移動(dòng)設(shè)備上的主流應(yīng)用分為三種:NativeApp、Web App 和 Hybrid App , NativeApp開發(fā)模式為當(dāng)前的主流開發(fā)模式及原生開發(fā),它主要采用C/S結(jié)構(gòu)方式,調(diào)用本地資源和系統(tǒng)API來完成軟件對(duì)的設(shè)計(jì)與開發(fā),相對(duì)于眾多的移動(dòng)操作系統(tǒng),并沒有一個(gè)統(tǒng)一的開發(fā)接口,所以一個(gè)移動(dòng)應(yīng)用要相對(duì)開發(fā)多個(gè)應(yīng)用版本,但是由于原生開發(fā),用戶體驗(yàn)效果比較好,程序運(yùn)行性能比較高,所以是當(dāng)前移動(dòng)應(yīng)用開發(fā)的主流。Web App開發(fā)模式采用B/S的結(jié)構(gòu)進(jìn)行開發(fā),主要是以HTML5作為開發(fā)基礎(chǔ),由于它采用了各種移動(dòng)設(shè)備統(tǒng)一的微瀏覽器作為運(yùn)行平臺(tái),所以各個(gè)移動(dòng)操作系統(tǒng)只需要進(jìn)行一個(gè)版本的開發(fā),開發(fā)和維護(hù)的費(fèi)用比較低,但是由于用戶體驗(yàn)的效果比較低和網(wǎng)速以及硬件的影響,目前不占開發(fā)主流。Hybrid App開發(fā)模式是作為NativeApp開發(fā)與Web App開發(fā)的一個(gè)結(jié)合體,它也采用了HTML5作為開發(fā)基礎(chǔ),封裝在本地的原生外殼中,也可以在移動(dòng)設(shè)備中調(diào)用相應(yīng)的本地API進(jìn)行原生開發(fā)。
相對(duì)這三種開發(fā)模式,雖然采用C/S 結(jié)構(gòu)的NativeApp原生開發(fā)現(xiàn)在占主流,但是采用B/S結(jié)構(gòu)的Web App也有著相當(dāng)大的優(yōu)點(diǎn):
(一)采用Web App方式開發(fā),移動(dòng)應(yīng)用開發(fā)的維護(hù)和升級(jí)方式簡單。目前,軟件系統(tǒng)的改進(jìn)和升級(jí)越來越頻繁,采用Web App結(jié)構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。WebApp結(jié)構(gòu)的產(chǎn)品只需要關(guān)心服務(wù)器,在服務(wù)器上進(jìn)行維護(hù)和升級(jí),所有移動(dòng)客戶端只是用瀏覽器訪問,根本不需要做任何的維護(hù)。所以移動(dòng)客戶端越來越“瘦”,而服務(wù)器越來越“胖”,這將是將來信息化發(fā)展的主流方向,這對(duì)用戶人力、物力、時(shí)間、費(fèi)用的節(jié)省是顯而易見的,驚人的。因此,維護(hù)和升級(jí)革命的方式是“瘦”客戶機(jī),“胖”服務(wù)器。
(二)成本降低,選擇更多?,F(xiàn)在手機(jī)的操作系統(tǒng)種類雖然比較多,但是每個(gè)智能設(shè)備上,瀏覽器都成為了標(biāo)準(zhǔn)配置,使用WebApp部署程序,可以使移動(dòng)應(yīng)用程序與具體的移動(dòng)設(shè)備的機(jī)型和操作系統(tǒng)沒有關(guān)系,這大大的降低了開發(fā)成本,實(shí)現(xiàn)了跨平臺(tái)的技術(shù)服務(wù)。
當(dāng)然,WebApp開發(fā)模式也有一定的缺點(diǎn),它在當(dāng)前的環(huán)境中的確不適應(yīng)大型游戲等高性能的軟件開發(fā),但是隨著信息技術(shù)發(fā)展的推移,移動(dòng)設(shè)備的飛速發(fā)展,可以讓基于HTML5的Web App游戲可以得到更好的用戶體驗(yàn)?,F(xiàn)在很多商務(wù)開發(fā)已經(jīng)開始在移動(dòng)設(shè)備中嶄露頭角,基于HTML5的WebApp設(shè)計(jì)軟件就非常適合大型信息處理的商務(wù)開發(fā),這一狀況與當(dāng)時(shí)二十世紀(jì)初的C/S模式與B/S之爭的場景非常相似,隨著大型商務(wù)處理在移動(dòng)設(shè)備上的應(yīng)用,移動(dòng)通訊技術(shù)的發(fā)展,我相信WebApp的開發(fā)將成為移動(dòng)開發(fā)的主流。
四、結(jié)語
隨著互聯(lián)網(wǎng)時(shí)代的發(fā)展,設(shè)備和技術(shù)的不斷提高,大量移動(dòng)終端被人們使用,這樣就需要大量的移動(dòng)應(yīng)用對(duì)移動(dòng)終端進(jìn)行良好的支持,因此,我們要不斷地提高移動(dòng)開發(fā)人員的開發(fā)效率,針對(duì)移動(dòng)操作系統(tǒng)的多樣性,要提高應(yīng)用程序的開發(fā)效率關(guān)鍵就是要跨平臺(tái)的開發(fā)技術(shù),使移動(dòng)應(yīng)用程序能夠適用于各種移動(dòng)操作系統(tǒng)之中,并且能夠保證程序的安全性和穩(wěn)定性。通過以上的分析和介紹,我們可以知道,Web App的開發(fā)模式能夠完美的實(shí)現(xiàn)跨平臺(tái)的開發(fā),它將是未來移動(dòng)開發(fā)的發(fā)展趨勢。
【參考文獻(xiàn)】
[1]張俊杰.淺談HTML5 的技術(shù)革新[J].科技視界,2012(18).
[2]騰訊GDC.淺談HTML5 與Web App[Z].互聯(lián)網(wǎng)的那些事,2012.
[3]馬榮.誰是未來的主宰[Z].中關(guān)村在線,2012.
[4]劉銘.西域明珠APP程序開發(fā)的構(gòu)思與應(yīng)用[J].電子技術(shù)與軟件工程,2014(09).