亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        校園業(yè)務(wù)中混合模式移動應(yīng)用軟件架構(gòu)的實現(xiàn)

        2015-08-29 04:07:26高晶
        中國信息技術(shù)教育 2015年16期
        關(guān)鍵詞:混合模式移動應(yīng)用

        高晶

        摘要:近些年,隨著移動互聯(lián)網(wǎng)和移動終端的迅速發(fā)展,移動應(yīng)用越來越受到人們的青睞,很多日常工作都可以通過移動應(yīng)用來處理,移動應(yīng)用成為基于計算機(jī)終端應(yīng)用的有力補(bǔ)充,移動應(yīng)用技術(shù)也成為當(dāng)前計算機(jī)技術(shù)領(lǐng)域的研究熱點(diǎn)。本文分析了當(dāng)前移動應(yīng)用的發(fā)展和開發(fā)模式,結(jié)合當(dāng)前校園移動應(yīng)用發(fā)展現(xiàn)狀,構(gòu)建了校園混合模式移動應(yīng)用軟件架構(gòu),力求通過使用該架構(gòu),探索出校園移動應(yīng)用開發(fā)的新途徑。

        關(guān)鍵詞:移動應(yīng)用;混合模式;軟件架構(gòu)

        中圖分類號:G434 文獻(xiàn)標(biāo)識碼:A 論文編號:1674-2117(2015)15/16-0119-03

        移動應(yīng)用的發(fā)展和開發(fā)模式

        2000年,中國移動互聯(lián)網(wǎng)誕生,2010年已被業(yè)界普遍認(rèn)為是移動互聯(lián)網(wǎng)的元年。從2000到2010的十年時間里,中國移動互聯(lián)網(wǎng)呈爆發(fā)式發(fā)展,使得在移動終端上使用各種互聯(lián)網(wǎng)應(yīng)用漸漸成為一種習(xí)慣。移動應(yīng)用的發(fā)展激發(fā)了廣大開發(fā)者進(jìn)行移動應(yīng)用創(chuàng)作的極大熱情。目前,移動應(yīng)用開發(fā)方式主要分為三種類型:原生開發(fā)模式、移動Web開發(fā)模式和混合開發(fā)模式。

        原生開發(fā)模式使用移動終端操作系統(tǒng)所支持的程序語言來編寫移動應(yīng)用。目前市場上移動終端操作系統(tǒng)有很多種。因此,要使用原生開發(fā)模式開發(fā)出一款能夠適用于各種操作系統(tǒng)的原生應(yīng)用,開發(fā)者需要花費(fèi)大量的時間和精力來進(jìn)行平臺間的移植工作,這就決定了采用原生開發(fā)模式進(jìn)行移動應(yīng)用開發(fā)具有周期長、開發(fā)門檻高、開發(fā)成本高、不跨平臺等缺點(diǎn)。當(dāng)然,原生開發(fā)模式也有優(yōu)點(diǎn),它可以訪問移動終端的所有功能,速度更快、性能更高、用戶體驗更好,等等。

        移動Web開發(fā)模式使用傳統(tǒng)的Web開發(fā)技術(shù)進(jìn)行開發(fā),通過移動終端瀏覽器進(jìn)行訪問。較原生開發(fā)模式,它具有開發(fā)周期短、開發(fā)門檻低、開發(fā)成本低、跨平臺等優(yōu)點(diǎn),但是移動Web應(yīng)用是基于瀏覽器的,無法調(diào)用移動終端系統(tǒng)API來實現(xiàn)一些高級功能,用戶體驗差。

        混合開發(fā)模式采用Web開發(fā)技術(shù),通過中間件包裝成各平臺的應(yīng)用程序,可以通過中間件的集成,調(diào)用大部分常用的移動終端系統(tǒng)API。因此,混合開發(fā)模式同時具有原生開發(fā)模式和移動Web開發(fā)模式的優(yōu)點(diǎn),即具有跨平臺、開發(fā)門檻低、開發(fā)成本低等優(yōu)點(diǎn)。

        校園移動應(yīng)用發(fā)展現(xiàn)狀

        目前國內(nèi)各大高?;就瓿闪诵@無線網(wǎng)的基礎(chǔ)設(shè)施覆蓋,為移動終端開展各項應(yīng)用打開了方便之門。但就目前的情況看,校園的移動應(yīng)用還存在一些問題,成熟的校園移動應(yīng)用很少,部分校園移動應(yīng)用是由學(xué)生團(tuán)體自發(fā)組織進(jìn)行研發(fā),研發(fā)過程缺乏統(tǒng)一的規(guī)劃和科學(xué)的工程性管理,可維護(hù)性比較差,難以實現(xiàn)可持續(xù)發(fā)展。要想使校園移動應(yīng)用更好地、持久地服務(wù)于廣大師生,就需要構(gòu)建一個校園移動應(yīng)用軟件架構(gòu),學(xué)生通過簡單的學(xué)習(xí)就可以進(jìn)行校園移動應(yīng)用的開發(fā)和維護(hù)工作,這樣就可以保持移動應(yīng)用的研發(fā)團(tuán)體相對穩(wěn)定,也可以保證校園移動應(yīng)用的可持續(xù)發(fā)展。

        校園混合模式移動應(yīng)用軟件架構(gòu)的構(gòu)建

        混合開發(fā)模式具有開發(fā)門檻低、跨平臺開發(fā)的優(yōu)點(diǎn),是今后移動應(yīng)用開發(fā)的主流,也是進(jìn)行校園移動應(yīng)用開發(fā)的首選。但目前采用混合開發(fā)模式的校園移動應(yīng)用較少,大部分應(yīng)用仍處于摸索階段,并沒有形成成熟的技術(shù)體系。因此,在對基于HTML5的混合開發(fā)模式研究的基礎(chǔ)上,我們構(gòu)建了混合模式移動應(yīng)用軟件架構(gòu),并應(yīng)用此架構(gòu)進(jìn)行校園移動應(yīng)用的開發(fā),力求通過使用該架構(gòu),探索出校園移動終端應(yīng)用開發(fā)的新途徑。

        基于混合開發(fā)模式的混合移動應(yīng)用軟件架構(gòu)分為服務(wù)器端業(yè)務(wù)邏輯處理和移動應(yīng)用UI設(shè)計兩個部分,如下圖所示。

        1.服務(wù)器端業(yè)務(wù)邏輯處理

        服務(wù)器端業(yè)務(wù)邏輯的處理我們采用了MVC設(shè)計模式,在具體的處理上,采用了Spring MVC框架和MySql數(shù)據(jù)庫。為了便于移動應(yīng)用的數(shù)據(jù)顯示,架構(gòu)采用了JSON數(shù)據(jù)交換格式。通過配置Jackson類庫,實現(xiàn)JSON的輸入和輸出,并在此基礎(chǔ)上提供了WEBService接口,將處理后的數(shù)據(jù)轉(zhuǎn)化為JSON格式。采用Spring MVC中的@ResponseBody將JSON數(shù)據(jù)傳遞給客戶端。這里重點(diǎn)介紹Spring MVC配置、數(shù)據(jù)庫操作和JSON傳遞的實現(xiàn)方法。

        (1)SpringMVC配置

        在Java Web項目中導(dǎo)入Spring的類庫集,并按照如下內(nèi)容的配置web.xml文件。

        spring

        org.springframework.web.servlet.DispatcherServlet

        1

        其中DispatcherServlet是前端控制器設(shè)計模式的實現(xiàn),提供Spring Web MVC的集中訪問點(diǎn),而且與Spring IoC容器無縫集成。然后在spring-servlet.xml文件中配置數(shù)據(jù)庫、注解、反射、國際化,并創(chuàng)建Controller、Service、Dao的相關(guān)基類,用于被未來MVC中使用的類來繼承,通常情況下,基類中配置了日志處理,基本的增、刪、改、查的方法,便于最大范圍地實現(xiàn)多態(tài)。

        (2)數(shù)據(jù)庫操作

        Spring MVC的Dao層和Service層是處理數(shù)據(jù)庫操作和業(yè)務(wù)邏輯功能的部分。通過Dao層完成針對數(shù)據(jù)庫系統(tǒng)的增、刪、改、查,通過Service層進(jìn)行業(yè)務(wù)判斷。通過繼承JdbcDaoSupport類定義Dao基類,再針對每一個數(shù)據(jù)結(jié)構(gòu)定義自己的Dao類,這樣便于數(shù)據(jù)獨(dú)立性的處理,也可以為持久化奠定基礎(chǔ)。

        (3)JSON傳遞

        Spring MVC支持JSON,一定要引用jackson-core-asl和jackson-mapper-asl的類庫,并在Spring的配置文件中,增加如下配置。

        public class JsonData {

        public List legend = new ArrayList();

        public JsonData(List legendList) {

        super();

        this.legend = legendList;

        }

        }

        在服務(wù)器端定義如下JSON數(shù)據(jù)類。

        通過Controller類中的方法將數(shù)據(jù)JSON化。在Controller類中,定義@ResponseBody,直接將JsonData實例傳遞給客戶端就完成了JSON數(shù)據(jù)向客戶端推送。具體實現(xiàn)代碼如下:

        @RequestMapping("test.do")

        @ResponseBody

        public JsonData test() {

        List legend = new ArrayList(Arrays.asList(new String[]{"test1"}));

        JsonData data=new JsonData(legend);

        return data;

        除上述關(guān)鍵點(diǎn)以外,考慮到服務(wù)器端向外提供接口的時候,有信息安全的要求,在客戶端訪問服務(wù)器端接口的時候需要通過HTTPS協(xié)議進(jìn)行安全認(rèn)證,并遵照軟件架構(gòu)的自身要求進(jìn)行協(xié)議握手認(rèn)證,這樣就防止了校園關(guān)鍵信息的泄露和惡意攻擊。

        2.移動應(yīng)用UI設(shè)計

        我們的移動應(yīng)用UI設(shè)計部分采用成熟的JS組件與原生API混合形式進(jìn)行,當(dāng)進(jìn)行普通畫面顯示的時候,采用HTML、CSS3和JQuery Mobile技術(shù),當(dāng)需要設(shè)備端功能的時候,調(diào)用原生API。這里重點(diǎn)介紹獲取并顯示JSON數(shù)據(jù)、本地存儲和移動應(yīng)用界面效果的實現(xiàn)方法。

        (1)獲取并顯示JSON數(shù)據(jù)

        在移動應(yīng)用端獲取JSON數(shù)據(jù),通常采用ajax方式,這樣客戶的體驗感受會更好,配合Loading的顯示,整個移動應(yīng)用端非常流暢。JQUERY提供了非常完善的ajax方法。下面代碼是在Id為show_div的div中顯示JSON數(shù)據(jù)的實現(xiàn)方法。

        $.ajax({

        type: "post",

        url: "test.do",

        dataType: "json",

        success: function (data) {

        $("#show_div").val(data[0]. legend);

        },

        error: function (XMLHttpRequest, textStatus, errorThrown) {

        alert(errorThrown);

        }

        });

        (2)本地存儲

        為了保證用戶在離線的情況下,可以查看本地已經(jīng)下載完成的數(shù)據(jù)信息,如校園的新聞信息、課程信息等,需要將一些數(shù)據(jù)信息保存在本地,保證非實時在線的情況下應(yīng)用是可用的。我們采用HTML5的存儲方式,存儲少量數(shù)據(jù)的時候,使用Local Storage來實現(xiàn),如果存儲的數(shù)據(jù)偏大,使用Web SQL Database來實現(xiàn)。通過HTML5操作Web SQL Database的openDatabase、transaction、executeSql三個基本方法,分別規(guī)定了數(shù)據(jù)庫打開、事務(wù)處理、執(zhí)行SQL語句的使用方式。我們定義了基本的客戶端數(shù)據(jù)庫結(jié)構(gòu)以后,通過這些基本方法操作數(shù)據(jù)庫將信息保存在本地。

        (3)移動應(yīng)用界面效果

        通過JQUERY Mobile實現(xiàn)客戶端的界面效果,主要是將一個應(yīng)用中的多個Page實現(xiàn)出來,再經(jīng)過各種效果的頁面跳轉(zhuǎn),構(gòu)成整個界面風(fēng)格的主體。

        Page是JQUERY Mobile的重要組成部分,由data-role="page"屬性產(chǎn)生,每個Page由header、content和footer組成(不是必須的),配合JQUERY Mobile提供的標(biāo)準(zhǔn)控件,構(gòu)成一系列常用的Page庫,這個Page庫就是移動應(yīng)用的UI框架。當(dāng)然作為后續(xù)擴(kuò)展開發(fā)者,可以自定義Page來實現(xiàn)自己的應(yīng)用界面。

        將上述這些功能集成為一套功能集合,就形成了一個混合模式移動應(yīng)用軟件架構(gòu)的雛形,在此基礎(chǔ)之上,開發(fā)人員可以更多地關(guān)注業(yè)務(wù)本身,而不需要考慮底層的技術(shù)問題,這樣既保證了應(yīng)用的完善性,也將共通性功能進(jìn)行了最大化的資源共享。

        結(jié)語

        混合模式移動應(yīng)用軟件架構(gòu)的實現(xiàn),有利于簡化移動應(yīng)用開發(fā)流程,有利于高校移動應(yīng)用的發(fā)展,從而推進(jìn)智慧校園建設(shè)和深化校園移動信息化建設(shè),促進(jìn)“互聯(lián)網(wǎng)+”發(fā)展戰(zhàn)略的實施。后續(xù)我們還會將架構(gòu)的應(yīng)用引入學(xué)生的興趣社團(tuán),將校園移動應(yīng)用開發(fā)的工作以項目的形式組織學(xué)生來完成,通過基于項目的實踐教學(xué),深化實踐教學(xué)改革,促進(jìn)卓越工程師培養(yǎng)計劃的實施。

        參考文獻(xiàn):

        劉歡,張增修,晨輝.華東師范大學(xué):混合開發(fā)移動應(yīng)用[J].中國教育網(wǎng)絡(luò),2013(7):63-65.

        猜你喜歡
        混合模式移動應(yīng)用
        MOOC+SPOC+CDIO混合模式教學(xué)在軟件開發(fā)類課程教學(xué)中的研究
        大學(xué)生創(chuàng)新創(chuàng)業(yè)課程教學(xué)改革與探索
        整合突破,奮勇前進(jìn)
        考試周刊(2016年104期)2017-01-19 14:01:48
        T學(xué)校公共設(shè)施便捷報修平臺的移動應(yīng)用研究
        東方教育(2016年18期)2017-01-16 16:42:44
        云計算環(huán)境下的微課移動云平臺設(shè)計
        大數(shù)據(jù)時代下免費(fèi)手機(jī)軟件盈利模式探討
        探討創(chuàng)業(yè)板上市公司治理結(jié)構(gòu)對盈利能力的影響
        基于APICloud的“校園健身達(dá)人”APP設(shè)計與實現(xiàn)
        智能手機(jī)移動應(yīng)用交互框架研究
        戲劇之家(2016年11期)2016-06-22 13:24:35
        職業(yè)教育課程的現(xiàn)代教學(xué)策略的實效
        国产91久久精品成人看网站| 人妻无码中文专区久久AV| 精品人妻一区二区三区av| 色熟妇人妻久久中文字幕 | 中文字幕人妻偷伦在线视频| 一区二区三区免费视频网站| 精品国产亚洲av高清日韩专区| 久久久久亚洲精品男人的天堂| 天堂а√在线中文在线新版| 97精品国产91久久久久久久| 亚洲av自偷自拍亚洲一区| 亚洲av无一区二区三区久久蜜桃| 国产精品亚洲αv天堂无码| 国产黑丝在线| 日韩av中文字幕亚洲天| 日韩精品免费一区二区三区观看 | 人妻少妇乱子伦无码视频专区| 嫩草影院未满十八岁禁止入内| 国内精品91久久久久| 日本加勒比精品一区二区视频 | 欧美人妻少妇精品久久黑人| 日韩www视频| 有码中文字幕一区二区| 亚洲国产色一区二区三区| 美女视频黄的全免费视频网站| 无遮挡中文毛片免费观看| 国产又湿又爽又猛的视频 | 久久久亚洲免费视频网| 欧美色欧美亚洲另类二区| 欧美激情区| 狠狠久久av一区二区三区| 国产情侣一区二区| 18禁高潮出水呻吟娇喘蜜芽| 国产精品无码久久久久下载| 在线观看国产白浆一区三区| 国产成人无码av一区二区| www插插插无码视频网站| 亚洲av手机在线一区| 成品人视频ww入口| 国产成人av一区二区三区无码| 真人做爰试看120秒|