陳海汝 何青 潘軒平 杜飛 范姣


摘要:針對(duì)傳統(tǒng)資訊傳播用戶面窄、功能拓展性弱、維護(hù)費(fèi)用昂貴等缺點(diǎn),騰訊公司研發(fā)的新產(chǎn)品“微信小程序”,較之手機(jī)APP和Web網(wǎng)頁(yè)有著更多優(yōu)勢(shì),是目前“輕應(yīng)用”理念的集中體現(xiàn)。設(shè)計(jì)開(kāi)發(fā)基于微信小程序的資訊平臺(tái),有利于學(xué)校資訊的速效性與通用性。資訊平臺(tái)主要功能模塊包括查看資訊、查看系統(tǒng)消息及擴(kuò)展功能三個(gè)模塊。該系統(tǒng)開(kāi)發(fā)簡(jiǎn)單、使用方便,兼容快速分發(fā)迭代,具有較好的推廣應(yīng)用前景。
關(guān)鍵詞:微信小程序;SSM框架;信息資訊;MYSQL數(shù)據(jù)庫(kù)
中圖分類(lèi)號(hào):TP319? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)18-0053-02
1 背景
微信小程序是近年來(lái)騰訊公司研發(fā)的高門(mén)檻創(chuàng)新技術(shù),無(wú)需下載即刻使用,用戶掃一掃就可打開(kāi)應(yīng)用。微信已經(jīng)成為生活中最常用的溝通交流軟件,擁有龐大的用戶群體,利用微信小程序傳播新聞資訊有更加廣闊的用戶群體,對(duì)于資訊傳播有顯著的提升。使用微信小程序?yàn)g覽學(xué)校的新聞資訊方便快捷,后期維護(hù)費(fèi)用低而且具有良好的通用性,有利于后續(xù)開(kāi)發(fā)及新功能的添加。
2 需求分析
2.1 開(kāi)發(fā)背景
學(xué)校是最常見(jiàn)的資訊中心,每天有大量的資訊信息需要處理和發(fā)布,同時(shí)同學(xué)們又需要快速瀏覽以及參與學(xué)校的各項(xiàng)活動(dòng),傳統(tǒng)的信息傳播方式APP和Web已經(jīng)不再能夠滿足需求變更極大的環(huán)境,APP需要繁復(fù)的安裝下載,Web網(wǎng)頁(yè)需要大量的時(shí)間制作規(guī)范以及適配,同時(shí)這兩者對(duì)于可能出現(xiàn)的功能變更沒(méi)有足夠的擴(kuò)展空間。而微信小程序的出現(xiàn)避免了兩者的所有缺點(diǎn),方便快速的開(kāi)發(fā)能快速上線產(chǎn)品,對(duì)于需求變更也有了更為快捷的處理方式。同時(shí)在后續(xù)開(kāi)發(fā)中,可以快速添加新功能以及配合教務(wù)系統(tǒng)進(jìn)行多功能開(kāi)發(fā)。
2.2 功能需求分析
資訊類(lèi)軟件需要方便、快捷,因此在功能上要突出資訊功能,用戶需要在打開(kāi)小程序后馬上了解到最新的實(shí)況資訊,要能收到學(xué)校的最新通知。同時(shí)在資訊內(nèi)容上,要能對(duì)相關(guān)資訊進(jìn)行保存收藏,以確保資訊的有效性,也方便今后查看核對(duì)。
本系統(tǒng)主要實(shí)現(xiàn)資訊瀏覽以及向用戶發(fā)送消息,因此主要分為三個(gè)功能模塊。具體介紹如下:
1)查詢資訊信息。用戶進(jìn)入之后可以快速查看資訊列表,了解學(xué)校的最新動(dòng)向。
2)查詢系統(tǒng)消息。用戶可以查看系統(tǒng)推送給自己的消息,了解學(xué)校教務(wù)的最新動(dòng)態(tài)。
3)收藏資訊信息。用戶可以選擇對(duì)相應(yīng)資訊進(jìn)行收藏,方便下一次查看,同時(shí)收藏資訊有利于用戶即時(shí)保存相應(yīng)資訊。
2.3 性能需求分析
評(píng)價(jià)軟件的質(zhì)量除了看其是否滿足用戶的功能需求外,還應(yīng)考量其性能指標(biāo),如任務(wù)的響應(yīng)時(shí)間,系統(tǒng)的穩(wěn)定性及安全性。系統(tǒng)性能的高低直接影響用戶對(duì)軟件的使用體驗(yàn)。對(duì)系統(tǒng)的性能評(píng)價(jià)主要看其占用運(yùn)行平臺(tái)的 CPU多少(越少越好),內(nèi)存的占用率(越低越好)及用戶請(qǐng)求的 響應(yīng)時(shí)間(越短越好)等。對(duì)于微信小程序而言,主要參考值是小程序響應(yīng)的時(shí)間,以及數(shù)據(jù)解析時(shí)間。本系統(tǒng)設(shè)計(jì)小程序的相應(yīng)時(shí)間要求為2S以內(nèi)。
另一方面,還要求本系統(tǒng)在退出后應(yīng)及時(shí)釋放資源(CPU,內(nèi)存等),以提高其他軟件的運(yùn)行速度,節(jié)省手機(jī)電量。若不及時(shí)銷(xiāo)毀必要進(jìn)程,則可能會(huì)對(duì)手機(jī)操作系統(tǒng)的造成越來(lái)越大的負(fù)擔(dān),最終導(dǎo)致手機(jī)系統(tǒng)的崩潰。
2.4 硬件需求分析
本系統(tǒng)搭建服務(wù)器采用阿里云服務(wù)器,并申請(qǐng)域名綁定,用于小程序開(kāi)發(fā)綁定。系統(tǒng)硬件配置如下:
1)PC端配置:2G運(yùn)行內(nèi)存,Windows Server2012 R2操作系統(tǒng),系統(tǒng)硬盤(pán)64G,搭載MYSQL數(shù)據(jù)庫(kù),還需要Tomcat8.0服務(wù)器,服務(wù)器公網(wǎng)IP需要綁定域名。
2)移動(dòng)端配置:因?yàn)椴捎玫氖俏⑿判〕绦蚍绞?,因此?duì)手機(jī)要求比較低,正常的Android手機(jī)或者IOS手機(jī)安裝最新版微信即可。
3 系統(tǒng)設(shè)計(jì)
3.1 功能模塊設(shè)計(jì)
功能模塊包括瀏覽資訊列表,瀏覽信息列表,瀏覽資訊內(nèi)容,瀏覽信息內(nèi)容,瀏覽收藏列表,用戶收藏幾大功能。具體介紹如下:
1)瀏覽資訊列表:用戶打開(kāi)小程序后,提供給用戶資訊所有資訊的總體列表,方便用戶進(jìn)一步選擇,以及快速瀏覽。
2)瀏覽信息列表:用戶選擇信息選項(xiàng)卡后,將所有系統(tǒng)發(fā)送的消息進(jìn)行打包并交給用戶,方便用戶查看及選擇。
3)瀏覽資訊內(nèi)容:當(dāng)用戶選擇相應(yīng)的資訊后,進(jìn)行頁(yè)面跳轉(zhuǎn),并根據(jù)資訊列表中用戶選擇的資訊進(jìn)一步獲取相應(yīng)的資訊內(nèi)容。
4)瀏覽消息內(nèi)容:用戶選擇消息后,提供給用戶查看具體的系統(tǒng)發(fā)送的通知消息。
5)瀏覽收藏列表:當(dāng)用戶在個(gè)人中心點(diǎn)擊“收藏”按鈕進(jìn)入收藏頁(yè)面時(shí),根據(jù)用戶的編號(hào)提供相應(yīng)用戶的歷史收藏列表。
6)用戶收藏:當(dāng)用戶在瀏覽資訊內(nèi)容時(shí),提供給用戶選擇對(duì)資訊進(jìn)行收藏,用于用戶下一次查看,以及保存相應(yīng)資訊信息。
根據(jù)功能模塊進(jìn)一步分析設(shè)計(jì),制作業(yè)務(wù)流程圖連通功能模塊。業(yè)務(wù)流程如圖1所示:
3.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
本系統(tǒng)使用輕量級(jí)數(shù)據(jù)庫(kù)MYSQL作為數(shù)據(jù)存儲(chǔ),使用Navicat進(jìn)行數(shù)據(jù)管理。
3.3 微信小程序設(shè)計(jì)
首先需要在微信公眾平臺(tái)注冊(cè)登錄賬號(hào)獲取APPID,然后配置項(xiàng)目APPID。
在微信開(kāi)發(fā)者工具中對(duì)WXML頁(yè)面文件、WXSS樣式文件、wx.json配置文件及wx.js邏輯文件分別進(jìn)行設(shè)計(jì)和編程,從而確定頁(yè)面布局和頁(yè)面邏輯處理,并解析JSON數(shù)組以確保程序的連通性。對(duì)頁(yè)面設(shè)計(jì)采用RPX技術(shù),可快速適配于不同機(jī)型屏幕大小。
此外通過(guò)調(diào)用wx.request方法向服務(wù)器發(fā)送請(qǐng)求,并傳出請(qǐng)求參數(shù),然后將接口返回?cái)?shù)據(jù)使用SetData處理為小程序數(shù)據(jù),并在頁(yè)面使用{{item.id}}的形式進(jìn)行調(diào)用。其中的JSON數(shù)組會(huì)自動(dòng)進(jìn)行排序,無(wú)需進(jìn)一步處理。
上述處理所涉及的接口如下:
1)獲取資訊列表接口。本接口主要處理請(qǐng)求資訊列表數(shù)據(jù),并對(duì)其進(jìn)行數(shù)據(jù)解析。通過(guò)向服務(wù)器發(fā)送請(qǐng)求參數(shù)id,獲取相應(yīng)的資訊數(shù)據(jù)。當(dāng)id為空時(shí),返回所有資訊數(shù)據(jù)。
2)獲取資訊列表接口。本接口主要處理請(qǐng)求消息列表數(shù)據(jù),以及獲取消息內(nèi)容,對(duì)消息進(jìn)行處理解析。
3)獲取資訊內(nèi)容接口。本接口主要處理請(qǐng)求資訊內(nèi)容數(shù)據(jù),得到資訊的詳細(xì)內(nèi)容并對(duì)其進(jìn)行解析。通過(guò)向服務(wù)器發(fā)送資訊id,獲取相應(yīng)資訊具體的資訊內(nèi)容。
4)收藏接口。本接口處理收藏的相關(guān)請(qǐng)求,包括收藏與查看收藏列表。通過(guò)發(fā)送資訊id,與用戶id綁定收藏信息。當(dāng)資訊id為空時(shí),返回相應(yīng)用戶的收藏資訊列表信息。
4 軟件測(cè)試
系統(tǒng)使用阿里云性能測(cè)試PTS(Performance Testing Service)。有別于傳統(tǒng)工具的繁復(fù),PTS采用互聯(lián)網(wǎng)化的交互、面向分布式和云化的設(shè)計(jì),更適合當(dāng)前的主流技術(shù)架構(gòu)。無(wú)論是自研還是適配開(kāi)源的功能,PTS都可以輕松模擬大量用戶訪問(wèn)業(yè)務(wù)的場(chǎng)景,任務(wù)隨時(shí)發(fā)起,免去搭建和維護(hù)成本。此外,PTS能緊密結(jié)合監(jiān)控類(lèi)產(chǎn)品提供一站式監(jiān)控、定位等附加價(jià)值,高效檢驗(yàn)和管理業(yè)務(wù)性能。
5 結(jié)束語(yǔ)
微信小程序在湖南文理學(xué)院芙蓉學(xué)院測(cè)試,運(yùn)行情況穩(wěn)定、使用效果良好。后續(xù)項(xiàng)目團(tuán)隊(duì)將在此基礎(chǔ)上進(jìn)一步結(jié)合實(shí)際使用完善軟件功能,加強(qiáng)軟件穩(wěn)定性、可靠性、安全性方面的探討,以推進(jìn)軟件向?qū)嵱眯头较虬l(fā)展,并進(jìn)一步利用微信小程序的擴(kuò)展性開(kāi)發(fā)迭代加入新功能。
參考文獻(xiàn):
[1] 劉明洋. 微信小程序?qū)崙?zhàn)入門(mén)[M].2版. 北京: 人民郵電出版社, 2018.
[2] 鄒鎮(zhèn)安, 王興柱, 朱志輝, 等. 基于Android平臺(tái)的學(xué)社APP設(shè)計(jì)與開(kāi)發(fā)[J]. 電腦知識(shí)與技術(shù), 2018, 14(13): 64-66.
[3] Baron Scbwarlz, Peter Zailsev, Vadim Tkacbenko. 高性能MySQL[M]. 北京: 電子工業(yè)出版社, 2013.
【通聯(lián)編輯:謝媛媛】