【摘 要】隨著無線城市的到來,為了滿足大家對移動端無線城市的要求,設(shè)計了基于MVC架構(gòu)模式的無線城市APP。該APP顯示各類展示信息,架構(gòu)模式為傳統(tǒng)的MVC模式,采用HTTP協(xié)議做為網(wǎng)絡(luò)通訊協(xié)議。實現(xiàn)移動前端、后臺、數(shù)據(jù)庫之間的信息交互,同時將相應(yīng)信息展示出來,實現(xiàn)了無線城市在移動端的展示。
【關(guān)鍵詞】無線城市;移動端;設(shè)計與實現(xiàn)
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A
Abstract:With the arrival of wireless city,in order to meet the requirements of wireless city,a wireless city app based on MVC architecture mode is designed. The app displays all kinds of display information. The architecture mode is traditional MVC mode,and uses HTTP protocol as network communication protocol. It realizes the information interaction among mobile front-end,background and database,and displays the corresponding information at the same time,which realizes the display of wireless city in the mobile client.
Keywords:wireless city;mobile client;design and implementation
1概述
隨著4G通信技術(shù)的成熟和廣泛商業(yè)應(yīng)用,基于移動端的信息獲取需要越來越大,相應(yīng)的應(yīng)用需求大增。移動終端的特點是:隨時、隨地獲取和展示各類信息。基于此,移動端無線城市[1]應(yīng)運而生。據(jù)悉,無線城市最早由美國費城提出,它是基于無線局域網(wǎng)的標(biāo)準(zhǔn)。隨后其它國家也提出無線城市的開發(fā)計劃。中國也有類似計劃,該計劃基于中國移動的TD-LTE網(wǎng)絡(luò),該網(wǎng)絡(luò)標(biāo)準(zhǔn)在移動端的網(wǎng)速非常快,這為中國無線城市廣泛應(yīng)用提供了基礎(chǔ)。
移動端操作系統(tǒng)有很多種,大浪淘沙過后,目前應(yīng)用較為廣泛的有如下三種:Google公司的Android系統(tǒng)、蘋果公司的iOS系統(tǒng)、微軟公司的Windows phone系統(tǒng)。Android系統(tǒng)由Andy Rubin開發(fā)出來,隨后被Google收購,同時基于開放手機聯(lián)盟進行改進,Android系統(tǒng)在移動操作系統(tǒng)中的占有率是最高的。IOS系統(tǒng)(iPhone operation system)與Mac OS X系統(tǒng)的核心一樣,都是來自于Apple Darwin。Windows phone系統(tǒng)由微軟公司推出,具有易用性、兼容性、支持第三方軟件等特點,推出后收到用戶一定程度的歡迎。
2 IOS端簡介
蘋果公司推出的iPad、iPhone、iPod、Apple TV等產(chǎn)品都是基于IOS操作系統(tǒng),該操作系統(tǒng)基于UNIX商業(yè)操作系統(tǒng),不開源,不支持flash。基于IOS端應(yīng)用的開發(fā)語言一般是objective-c和swift,swift是蘋果公司2014年開發(fā)出的新的編程語言,在Mac OS和IOS平臺上都可以運行。該系統(tǒng)的內(nèi)置應(yīng)用包括:智能語音助手Siri、視頻通話工具FaceTime、瀏覽器Safari、文件傳遞Airdrop、云端存儲iCloud等。
IOS系統(tǒng)的架構(gòu)包括:系統(tǒng)層(Core Operation Syestem Layer)、服務(wù)層(Core Services layer)、媒體層(Media layer)、接觸層(Cocoa Touch layer)四個層次。
1)接觸層(Cocoa Touch layer),為各種APP開發(fā)提供了框架,這些框架大部分與UI相關(guān),主要負(fù)責(zé)IOS系統(tǒng)的交互操作。包含:Address Book UI框架、Map Kit框架、Message UI框架等等。
2)媒體層(Media layer),有了這一層,我們可以使用IOS系統(tǒng)中的各種媒體文件,進行音頻、視頻、圖形、動畫的處理。包含:Core Graphics、Image I/O、Assets Library Framework、Core Audio Frameworks等等。
3)服務(wù)層(Core Services layer),可以通過這一層次來訪問IOS的一些服務(wù)。這一層的接口是基于C程序語言。
4)系統(tǒng)層(Core Operation Syestem Layer),是IOS系統(tǒng)層次的最底層,提供最底層的一些功能。包括:電源管理、內(nèi)存管理、文件管理等等系統(tǒng)任務(wù)。一般來說,APP應(yīng)用的開發(fā)人員不需要直接與該層打交道。
3 無線城市架構(gòu)模式設(shè)計
基于MVC架構(gòu)模式[2]的無線城市中有很多功能模塊,每個功能模塊的運行都涉及到信息的采集和顯示。以前的應(yīng)用系統(tǒng)架構(gòu)中,各種邏輯混合在一起。后期一旦需求發(fā)生變化,它將不能夠滿足需求,給以后的維護帶來很大的不便。分層體系結(jié)構(gòu)的概念產(chǎn)生于歷史性的時刻,MVC體系結(jié)構(gòu)模式是其典型代表。
MVC不是一種設(shè)計模式[3],而是一種體系結(jié)構(gòu)模式,它描述應(yīng)用程序的結(jié)構(gòu)以及結(jié)構(gòu)各個部分的職責(zé)和交互。MVC是模型視圖控制器的縮寫,它由三個部分組成:MODEL、VIEWER和CONTROLLER,這種架構(gòu)模式廣泛應(yīng)用于APP軟件的開發(fā)。
3.1 MVC三層架構(gòu)
MODEL層主要是封裝和處理數(shù)據(jù),但MODEL層不關(guān)心它將如何顯示。
VIEWER層主要是將數(shù)據(jù)顯示在界面上。
CONTROLLER層主要是處理用戶與軟件界面的交互,界面層可以接收網(wǎng)絡(luò)交互數(shù)據(jù)。
3.2 MVC原理
MVC(模型-視圖-控制器)體系結(jié)構(gòu)[4]并不難,軟件需要根據(jù)三層原理將各個模塊區(qū)分開來。
模型-視圖-控制器體系結(jié)構(gòu)模式不適合中小型應(yīng)用,這種模式在開發(fā)中會導(dǎo)致需要更多的開發(fā)工時,但是確有效的提升了APP軟件的穩(wěn)定性,綜合考慮,對于APP軟件開發(fā)來說,還是非常適合的。
4 總結(jié)
采用MVC架構(gòu)模式,HTTP通訊協(xié)議,設(shè)計了一款基于IOS客戶端的無線城市應(yīng)用軟件,實現(xiàn)城市生活各類信息的獲取和展示。該款I(lǐng)OS端移動應(yīng)用,自App Store上線以來,受到廣泛的歡迎,累計下載量120余萬次。但是,這款應(yīng)用也存在一些后續(xù)有待優(yōu)化調(diào)整的地方。
1)界面分層過多。界面分層過于復(fù)雜,可以優(yōu)化頁面分層,讓用戶有更好的使用體驗。
2)通訊的穩(wěn)定性。該IOS端移動應(yīng)用,通訊協(xié)議是HTTP,交互簡單,但是用戶量較大的時候,負(fù)載均衡的處理還可以優(yōu)化。
3)當(dāng)前,還有很多開發(fā)工具不能對接模型-視圖-控制器模式。怎么去改造這些工具,從而適應(yīng)MVC模式,代價比較高,這也是使用MVC模式的的一個困難。
參考文獻(xiàn):
[1]關(guān)矛. 無線城市全網(wǎng)平臺設(shè)計[J]. 電信工程技術(shù)與標(biāo)準(zhǔn)化,2018(1):35-38.
[2]張治平. 淺談MVC架構(gòu)在開發(fā)ASP.NET站點中的應(yīng)用[J]. 電子技術(shù)與軟件工程,2016(5):63-63.
[3]孫建偉,李超,于波. 基于WebRTC應(yīng)用層網(wǎng)關(guān)在iOS端的設(shè)計與實現(xiàn)[J]. 計算機系統(tǒng)應(yīng)用,2017,26(10):89-94.
[4]章沖,楊東,陳俊,等. 基于iOS平臺的移動智慧校園系統(tǒng)設(shè)計與實現(xiàn)[J]. 軟件導(dǎo)刊,2016,15(2):75-77.
[5]黎永良,崔杜武. MVC設(shè)計模式的改進與應(yīng)用[J]. 計算機工程,2005,31(9):96-97.
作者簡介:
潘華強(1983—),男,湖北武漢,高級工程師,碩士,研究方向為軟件工程,教育信息化。
(作者單位:武漢軟件工程職業(yè)學(xué)院)