• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Android的智慧競賽APP設(shè)計(jì)與開發(fā)

      2017-03-15 16:40:23李利杰
      價(jià)值工程 2017年6期
      關(guān)鍵詞:觀察者分層

      李利杰

      摘要:為了提高智慧競賽APP重用性和擴(kuò)展性,充分分析需求分析基礎(chǔ)上,采用分層設(shè)計(jì)思想解耦模塊。數(shù)據(jù)交互上采用輕量級的簡單對象訪問協(xié)議實(shí)現(xiàn)客戶端與服務(wù)器之間實(shí)現(xiàn)異步數(shù)據(jù)交互,減輕服務(wù)器響應(yīng)負(fù)載,同時也提高了客戶端用戶體驗(yàn)。數(shù)據(jù)交互設(shè)計(jì)運(yùn)用觀察者設(shè)計(jì)模式實(shí)現(xiàn)了數(shù)據(jù)響應(yīng)與多個響應(yīng)線程之間一對多的依賴關(guān)系,以便所有依賴于數(shù)據(jù)請求對象都能及時刷新。最后系統(tǒng)設(shè)計(jì)采用百度推送方式確保消息及時性。系統(tǒng)測試表明上述的智慧競賽APP設(shè)計(jì)合理,性能良好。

      Abstract: In order to improve the reusability and scalability of the APP, we use the hierarchical design idea to decouple the module based on the analysis of the requirements. The lightweight simple object access protocol is used to implement asynchronous data interaction between client and server, which can reduce the load of server response and improve the user experience. The data interaction design uses the observer design pattern to achieve a multi dependency relationship between the data response and multiple response threads, so that all data requests can be refreshed in time. Finally, the system design adopts Baidu push mode to ensure timeliness of the information. The system test shows that the design of APP is reasonable and the performance is good.

      關(guān)鍵詞:分層;異步;觀察者

      Key words: stratification;asynchronous;observer

      中圖分類號: TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-4311(2017)06-0075-02

      0 引言

      技能競賽是高職院校培養(yǎng)高技能人才的重要載體,培養(yǎng)學(xué)生創(chuàng)新創(chuàng)業(yè)和團(tuán)隊(duì)協(xié)作能力的重要推動力[1][2]。另一方面隨著學(xué)科競賽活動規(guī)模擴(kuò)展,學(xué)校競賽管理人員采用人工方式管理和組織學(xué)科競賽缺陷日期凸顯。學(xué)科競賽管理人員無法查看指導(dǎo)教師輔導(dǎo)軌跡和學(xué)生參加競賽輔導(dǎo)的學(xué)習(xí)軌跡。競賽信息無法覆蓋到絕大部分學(xué)生信息,成為影響競賽苗子選拔的一個重要因素。目前競賽系統(tǒng)都缺乏移動端支持,使得競賽系統(tǒng)不能在學(xué)生群體中得到大范圍推廣和使用[3][4][5]。因此基于Android的智慧競賽APP設(shè)計(jì)和開發(fā)具有現(xiàn)實(shí)意義。

      1 智慧競賽APP需求分析

      智慧競賽APP設(shè)計(jì)與開發(fā)延展了競賽協(xié)同管理平臺,使隨時隨地參與競賽和管理競賽的可能成為現(xiàn)實(shí)。需求分析過程中考慮到過多功能影響用戶體驗(yàn)這一不理因素,剔除智慧競賽協(xié)同管理平臺中部分使用頻率較低的功能需求,最終得到的智慧競賽APP客戶端用例圖(如圖1所示)。

      智慧競賽APP需求涉及到技能競賽管理人員,指導(dǎo)教師和競賽學(xué)生三類角色。競賽管理人員角色涉及到的用例有發(fā)布競賽信息,瀏覽教師輔導(dǎo)軌跡,瀏覽學(xué)生學(xué)習(xí)軌跡和查看統(tǒng)計(jì)數(shù)據(jù)。從這個用例圖中可知,整個賽事的發(fā)布是競賽管理人員負(fù)責(zé)。當(dāng)競賽管理人員發(fā)布賽項(xiàng)的同時將向指導(dǎo)教師和競賽學(xué)生推送這一賽項(xiàng)的推送消息。競賽管理人員通過瀏覽教師輔導(dǎo)軌跡這一用例具體查看每位指導(dǎo)教師指導(dǎo)學(xué)生的具體事項(xiàng),實(shí)現(xiàn)對教師輔導(dǎo)的精細(xì)化過程管理。此外,競賽管理人員借助瀏覽學(xué)生學(xué)習(xí)軌跡這一用例查看競賽學(xué)生參加競賽培訓(xùn),參加競賽輔導(dǎo)的具體日期和次數(shù),實(shí)現(xiàn)對競賽學(xué)生學(xué)習(xí)的動態(tài)掌控。查看統(tǒng)計(jì)數(shù)據(jù)用例幫助競賽管理人員以報(bào)表形式查看競賽統(tǒng)計(jì)信息,如年度競賽成績信息等。指導(dǎo)教師相關(guān)用例為申報(bào)競賽指導(dǎo),發(fā)布競賽指導(dǎo)資料,瀏覽學(xué)生學(xué)習(xí)軌跡和評價(jià)作品。申報(bào)競賽指導(dǎo)用例要求指導(dǎo)指導(dǎo)具體技能競賽前須提出申請,獲得批準(zhǔn)后方可指導(dǎo)學(xué)生競賽,有利于學(xué)院和學(xué)校指導(dǎo)教師統(tǒng)籌安排。發(fā)布競賽指導(dǎo)資料用例表示指導(dǎo)教師在獲得指導(dǎo)資格后定期發(fā)布相關(guān)聯(lián)賽項(xiàng)的各種輔導(dǎo)資料,如學(xué)習(xí)視頻和文檔等。評價(jià)作品用例表示指導(dǎo)教師評價(jià)學(xué)生提交競賽作品。競賽學(xué)生涉及用例主要為參加競賽報(bào)名,學(xué)習(xí)競賽資料和提交競賽作品。

      2 智慧競賽APP架構(gòu)設(shè)計(jì)

      智慧競賽APP運(yùn)用分層設(shè)計(jì)思想,將其分解為界面層,功能層,中間件層和操作系統(tǒng)層(如圖2所示)。分層設(shè)計(jì)使得開發(fā)人員只關(guān)注整個結(jié)構(gòu)中的其中某一層,允許用新的實(shí)現(xiàn)來替換原有層次的實(shí)現(xiàn),降低層與層之間的依賴,有利于標(biāo)準(zhǔn)化和各層邏輯的復(fù)用。智慧競賽APP用戶功能層提供UI訪問的基礎(chǔ)功能,主要有用戶管理,數(shù)據(jù)查詢,視頻控制與軟件升級。用戶功能層使用中間件層有消息推送,數(shù)據(jù)訪問代理,流媒體控制與版本控制。消息推送中間件封裝了基礎(chǔ)層中的第三方的百度云推送服務(wù)。

      數(shù)據(jù)訪問代理中間件借助于基礎(chǔ)層所提供的網(wǎng)絡(luò)層SOCKET和HTTP協(xié)議,利用簡單對象訪問協(xié)議SOAP實(shí)現(xiàn)智慧競賽APP客戶端與智慧競賽協(xié)同管理平臺之間數(shù)據(jù)交換。設(shè)計(jì)中封裝Util類實(shí)現(xiàn)跟SOAP協(xié)議相關(guān)方法。從圖3可知,Util類中GetSoapXml方法根據(jù)協(xié)議中的body內(nèi)容封裝一個soap協(xié)議,getSoapBodyElement方法從完整的soap協(xié)議內(nèi)容中解析出soap body內(nèi)容。NetUtil方法中的sendByPost方法采用http post方式發(fā)送JSon格式報(bào)文。

      3 智慧競賽APP數(shù)據(jù)交換

      智慧競賽APP與智慧競賽協(xié)同管理平臺之間采用JSON方式進(jìn)行異步數(shù)據(jù)交換。JSON是一種基于ECMAScript的輕量級的數(shù)據(jù)交換格式,是一種完全獨(dú)立于語言的文本格式。智慧競賽APP客戶端中采用http post方式實(shí)現(xiàn)與服務(wù)器的交換。JSON請求類設(shè)計(jì)采用觀察者模式(如圖4所示),通過SetOnResponseEventListener方法實(shí)現(xiàn)與RequestThread之間通信。RequestThread負(fù)責(zé)監(jiān)聽和處理具體相應(yīng)請求。

      4 智慧競賽APP推送服務(wù)

      消息推送通過定期傳送用戶需要的信息來減少信息過載的一項(xiàng)新技術(shù),根據(jù)用戶的興趣搜索、過濾信息,并將其定期推給用戶,幫助用戶高效率地發(fā)掘有價(jià)值的信息。常見的推送方式有輪詢和持久連接方式。輪詢方式中客戶端定期向服務(wù)器端發(fā)送請求,查詢數(shù)據(jù)更新狀態(tài)。持久連接方式中客戶端和服務(wù)器之間建立長久連接,這樣就可以實(shí)現(xiàn)消息的及時行和實(shí)時性。

      智慧競賽協(xié)同服務(wù)平臺通過百度消息推送服務(wù)將競賽相關(guān)信息定期推送到智慧競賽APP客戶端確保消息及時性。使用百度推送服務(wù)基本流程如下:首先開發(fā)者在百度注冊并登陸后,創(chuàng)建一個應(yīng)用;接著利用百度提供的客戶端android SDK編寫該應(yīng)用的客戶端程序,將API Key寫入客戶端程序的配置文件;然后利用百度提供的推送平臺向百度的推送服務(wù)器發(fā)送推送消息的命令,百度服務(wù)器收到命令后向客戶端推送消息。該過程也可以由開發(fā)者利用百度提供的PHP SDK編寫腳本完成,此時需要顯式使用API Key和secret Key,根據(jù)推送需求可能還會需要user id、channel id以及tag。智慧競賽消息推送架構(gòu)具體如圖5所示。

      5 結(jié)束語

      基于Android的智慧競賽APP采用分層設(shè)計(jì)思想實(shí)現(xiàn)了松耦合軟件設(shè)計(jì)要求。設(shè)計(jì)方案中在簡單對象訪問協(xié)議基礎(chǔ)上設(shè)計(jì)了NetUtil和Util類構(gòu)造數(shù)據(jù)訪問中間件,實(shí)現(xiàn)了模塊的重用。智慧競賽APP采用百度云推送方式快速構(gòu)建了消息推送服務(wù),采用第三方專業(yè)推送服務(wù)減少了推送服務(wù)器維護(hù)成本。

      參考文獻(xiàn):

      [1]陳紅玲,崔寧,崔樹林,曾文鍵.基于.NET平臺高校競賽管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013(01):173-176.

      [2]毛洪賁,王石發(fā),姜琪,周愛花.基于.NET的學(xué)科競賽管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代教育技術(shù),2013(12):107-110.

      [3]羅玲玲.高校學(xué)科競賽信息管理系統(tǒng)的研究與分析[D].云南大學(xué),2015.

      [4]陳???基于網(wǎng)絡(luò)測評的競賽管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].江西財(cái)經(jīng)大學(xué),2015.

      [5]蘆涵麗.南昌市第一中等專業(yè)學(xué)校電子商務(wù)競賽管理系統(tǒng)的研究與分析[D].云南大學(xué),2015.

      猜你喜歡
      觀察者分層
      觀察者
      有趣的分層現(xiàn)象
      軍事文摘(2020年18期)2020-10-27 01:55:18
      一種沉降環(huán)可準(zhǔn)確就位的分層沉降儀
      “你看不見我”
      中外文摘(2019年8期)2019-04-30 06:47:36
      冷靜而又理性的觀察者——德國華人作家劉瑛訪談
      雨林的分層
      有趣的分層
      觀察者模式在Java 事件處理中的應(yīng)用研究*
      委托與事件在觀察者模式中的應(yīng)用*
      火車勻速進(jìn)站時鳴笛音調(diào)不變化嗎?
      物理教師(2010年5期)2010-07-24 08:23:30
      阳泉市| 常山县| 翁牛特旗| 武宣县| 平罗县| 开江县| 泰顺县| 广德县| 二手房| 前郭尔| 洛隆县| 泰州市| 兴和县| 阳山县| 西盟| 赤城县| 南宫市| 东山县| 南和县| 彩票| 绵阳市| 高邮市| 常德市| 大洼县| 安达市| 保康县| 蒙阴县| 大厂| 镇远县| 绥中县| 张家川| 阿克陶县| 林口县| 全椒县| 紫云| 巴塘县| 巨野县| 三原县| 洪洞县| 阳春市| 息烽县|