基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn) 23000_第1頁
基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn) 23000_第2頁
基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn) 23000_第3頁
基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn) 23000_第4頁
基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn) 23000_第5頁
已閱讀5頁,還剩80頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 畢 業(yè) 設(shè) 計(論 文)題目(中文):基于微信小程序的連連看小游戲的 設(shè)計與實(shí)現(xiàn) (英文):Design and Implementation of Lianliankan Games Based on WeChat Small Program 學(xué) 院 工學(xué)院 專業(yè)班級 網(wǎng)絡(luò)工程 學(xué)生姓名 學(xué) 號 指導(dǎo)教師 完 成 日 期 2019 年 5月上海師范大學(xué)天華學(xué)院本科畢業(yè)設(shè)計(論文)誠信聲明本人鄭重聲明:所呈交的畢業(yè)設(shè)計(論文),題目基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn)是本人在指導(dǎo)教師的指導(dǎo)下,進(jìn)行研究工作所取得的成果。對本文的研究做出重要貢獻(xiàn)的個人和集體,均已在文中以明確方式注明。除此之

2、外,本設(shè)計(論文)不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的作品成果。本人完全意識到本聲明應(yīng)承擔(dān)的法律責(zé)任。 作者(簽名): 日期: 年 月 日 畢業(yè)設(shè)計(論文)任務(wù)書(20 屆)題目(中文):基于微信小程序的連連看小游戲的 設(shè)計與實(shí)現(xiàn) (英文):Design and Implementation of Lianliankan Games Based on WeChat Small Program 學(xué) 院 工學(xué)院 專業(yè)班級 網(wǎng)絡(luò)工程學(xué)生姓名 學(xué) 號 指導(dǎo)教師 學(xué)院負(fù)責(zé)人 (簽章) 日 期: 2019年4月1日一、 畢業(yè)設(shè)計(論文)的主要內(nèi)容與具體要求(任務(wù)及背景、工作環(huán)境、成果形式、著重培養(yǎng)的

3、能力、有實(shí)驗(yàn)環(huán)節(jié)的要提出主要技術(shù)指標(biāo)、要求)(一)、畢業(yè)設(shè)計(論文)主要內(nèi)容及主要技術(shù)指標(biāo)、要求1. 主要內(nèi)容本課題為基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn)。課題研究內(nèi)容如下:(1)了解并掌握連連看小游戲邏輯算法;(2)掌握微信小程序原理、功能與發(fā)開流程;(3)完成系統(tǒng)設(shè)計,實(shí)現(xiàn)客戶端與服務(wù)器的交互,完成系統(tǒng)實(shí)現(xiàn)與測試。2. 主要技術(shù)指標(biāo)、要求(1)使用微信小程序APPID和Web開發(fā)者工具;(2)建立連連看游戲系統(tǒng),構(gòu)建完整的小程序組成:一個入口文件:app.js,一個全局樣式:app.wxss,一個全局配置:app.Json。(二)、畢業(yè)設(shè)計(論文)的基本要求1. 認(rèn)真、獨(dú)立完成3000

4、-5000漢字或10000以上字符的外文科技文獻(xiàn)譯文,按照學(xué)校規(guī)定的譯文要求和格式撰寫。2. 認(rèn)真、獨(dú)立完成不少于10000字的畢業(yè)設(shè)計(論文)報告的寫作,按照學(xué)校規(guī)定的論文要求和格式撰寫。3. 畢業(yè)設(shè)計報告要求包含:(1)開題報告一份; (2)畢業(yè)設(shè)計一份; 4. 及時與指導(dǎo)老師進(jìn)行溝通,按計劃完成畢業(yè)設(shè)計(論文)報告的寫作和答辯工作。二、畢業(yè)設(shè)計(論文)進(jìn)度安排起訖日期工作內(nèi)容備 注第七學(xué)期第14周第七學(xué)期第15-17周第七學(xué)期第18周第八學(xué)期第1-3周第八學(xué)期第4周第八學(xué)期第5-10周第八學(xué)期第11周第八學(xué)期第12周接受畢業(yè)設(shè)計(論文)任務(wù)書。調(diào)研,完成英文資料翻譯。完成畢業(yè)設(shè)計(論文)

5、開題報告。按照畢業(yè)設(shè)計要求,開展研究,完成設(shè)計方案。畢業(yè)設(shè)計中期檢查。整理、撰寫畢業(yè)論文。答辯資格審查。答辯。三、所需的資料和主要參考文獻(xiàn)1劉曉.移動端小游戲的發(fā)展與問題應(yīng)對J.傳媒,2018(23):50-52.2蘇濤,陳力,王麟閣.基于微信小程序平臺的手機(jī)校園NFC支付設(shè)計J.信息技術(shù)與信息化,2019(03):52-53.3程子珍. 基于微信小程序的網(wǎng)上購物系統(tǒng)的設(shè)計與實(shí)現(xiàn)D.首都經(jīng)濟(jì)貿(mào)易大學(xué),2018.4孔祥龍.Android平臺連連看游戲控制邏輯設(shè)計與實(shí)現(xiàn)J.電腦知識與技術(shù),2017,13(03):206-208.5朱亞玲,張睿敏.基于java的連連看游戲設(shè)計與實(shí)現(xiàn)J.數(shù)字技術(shù)與應(yīng)用

6、,2016(03):161-162.6李麗惠,莊楊波.連連看游戲搜索算法的研究與改進(jìn)J.漳州職業(yè)技術(shù)學(xué)院學(xué)報,2016,18(04):17-20.7黎利輝.基于深度優(yōu)先搜索的連連看游戲路徑查找算法J.福建電腦,2019,35(01):16-18.8邢榕珊,匡芳君.微信小程序設(shè)計J.計算機(jī)時代,2018(08):9-12.9張文敏.微信小程序游戲的發(fā)展現(xiàn)狀及其社交屬性J.新聞研究導(dǎo)刊,2018,9(14):108.10陶宇.基于用戶體驗(yàn)的游戲復(fù)雜界面設(shè)計分析及可用性評價研究J.工業(yè)設(shè)計,2019(03):126-127.11孫宇嬌. 手機(jī)游戲交互界面設(shè)計的優(yōu)化研究D.北京交通大學(xué),2017.注:

7、1. 本任務(wù)書需雙面打印,由指導(dǎo)教師填寫并經(jīng)所在學(xué)院審核確認(rèn);2. 本任務(wù)書按畢業(yè)設(shè)計(論文)裝訂要求,裝訂在學(xué)生的“畢業(yè)設(shè)計(論文)”文本內(nèi),學(xué)院存檔;3. 指導(dǎo)教師、學(xué)生可各執(zhí)一份復(fù)印件,供檢查論文進(jìn)度時使用。上海師范大學(xué)天華學(xué)院2015屆畢業(yè)設(shè)計(論文)開題報告設(shè)計(論文)題目基于微信小程序的連連看小游戲的設(shè)計與實(shí)現(xiàn)學(xué)生姓名學(xué) 號專業(yè)、班級網(wǎng)絡(luò)工程學(xué)院工學(xué)院指導(dǎo)教師姓名建議從以下方面填寫:1. 簡述課題的作用和意義2. 國內(nèi)外的現(xiàn)狀和發(fā)展趨勢等情況(文獻(xiàn)綜述),尚待解決的問題;3. 重點(diǎn)介紹完成任務(wù)的可能思路、方案和計劃;4. (工科類專業(yè)需填寫)所需的主要儀器和設(shè)備等。1、課題的作用和

8、意義娛樂是人類的天性,每個時代都有各種不同的娛樂活動供人消遣,游戲更是隨著時代的變化在不停的進(jìn)化演變。由于手機(jī)擁有龐大的潛在用戶群體以及便攜性、網(wǎng)絡(luò)化等特點(diǎn),手機(jī)游戲的出現(xiàn)就是一個必然的結(jié)果。游戲本身的普及性和普遍性是其生存之道,像最初的“貪吃蛇”、“俄羅斯方塊”等為大家耳熟能詳。然而,隨著移動通信技術(shù)的飛速發(fā)展,這些簡單的黑白類游戲已經(jīng)滿足不了用戶的需要。連連看游戲作為一款益智類游戲,在機(jī)上就早已成為上班族的熱寵。據(jù)相關(guān)調(diào)查,手機(jī)游戲市場各類型游戲中益智類游戲占市場的43%。手機(jī)游戲是在手機(jī)上運(yùn)行的游戲軟件。手機(jī)游戲分為單機(jī)游戲和網(wǎng)絡(luò)游戲。單機(jī)游戲是只使用一個設(shè)備就可以獨(dú)立運(yùn)行的游戲。它不同

9、于手游和在線游戲,不需要專門的服務(wù)器就可以正常運(yùn)行,部分游戲軟件也支持多手機(jī)互聯(lián)以及多人對戰(zhàn)。網(wǎng)絡(luò)游戲是指以互聯(lián)網(wǎng)為傳輸媒介,以游戲運(yùn)營商服務(wù)器和用戶設(shè)備為終端來作為信息交流窗口,實(shí)現(xiàn)娛樂、休閑游戲、交流和取得虛擬成就的,可持續(xù)性的個人線上游戲。移動網(wǎng)絡(luò)游戲尚處于市場導(dǎo)入期,未來幾年,手機(jī)網(wǎng)絡(luò)游戲?qū)⑦M(jìn)入快速發(fā)展階段。雖然隨著智能機(jī)的普及以及移動網(wǎng)絡(luò)的覆蓋率增加,手機(jī)網(wǎng)游日益興起,但是網(wǎng)游難免涉及到一些金錢交易,在進(jìn)行手機(jī)網(wǎng)游交易的時候還是存在一定的風(fēng)險,除了小心謹(jǐn)慎防止上當(dāng)之外,也有不少玩家始終忠于無需網(wǎng)絡(luò)的單機(jī)游戲,這主要得益于單機(jī)游戲無需溝通的懶人特質(zhì)和相對安全的操作保障。智能手機(jī)游戲的其

10、中一個特點(diǎn)是便攜性和移動性。移動便攜性、移動性特征能更好的滿足用戶隨時玩游戲的需求,用戶能夠很好的利用排隊(duì)或者類似等車的時間玩游戲,因此,手機(jī)游戲碎片化的特性明顯突出。連連看游戲就屬于這種類型,因此完全可以移植到手機(jī)平臺上。連連看游戲適用于各個年齡層的人群,可以使人們在緊張的工作之余放松一下心情,具有一定的應(yīng)用和商業(yè)價值。2、國內(nèi)外現(xiàn)狀和發(fā)展趨勢,尚待解決的問題微信小程序是一種c2p形式的app,是一種用戶與服務(wù)相互對應(yīng)的軟件模式,與傳統(tǒng)的 B2C 或 P2P 模式不同,這種模式是針對小程序而新產(chǎn)生的一種模式。用戶可以通過所需的服務(wù)選取小程序,而因?yàn)樾〕绦蚨鄶?shù)是依賴于其他 APP 平臺,且所占

11、內(nèi)存小,操作方便等原因,小程序的使用就像選擇服務(wù)一樣,方便且簡潔。微信小程序在 17 年初上市,但是小程序模式軟件卻已經(jīng)出現(xiàn)很久,在支付寶和微信界面中,存在大量的服務(wù)按鈕,如買車票,買電影票,充值話費(fèi)等,這些都屬于小程序范疇,內(nèi)存小,即搜即用是其主要特點(diǎn)。但是在 2017 年微信小程序正式提出來之前,小程序并不可以自行開發(fā),都是由微信或者支付寶等公司自動開發(fā),并融合在相應(yīng)的 APP 之上的。在 2017 年初后,微信提供了可以研發(fā)小程序的平臺,用戶可以自行開發(fā)小程序,并發(fā)布。在微信小程序提出一年后,即 2017 年底,微信小程序因?yàn)橐恍┪⑿判∮螒蚨鴤涫荜P(guān)注,據(jù)統(tǒng)計以微信跳一跳,最強(qiáng)大腦為首的微

12、信小游戲使用用戶達(dá)到近千萬?!叭駣蕵贰钡挠螒虮尘跋拢〕绦蜃畲蟮膬?yōu)勢就是吸引了微信本身龐大基數(shù)的“非游戲玩家”群體,借助于微信強(qiáng)社交朋友關(guān)系網(wǎng),小程序的發(fā)展有著游戲客戶端發(fā)展不可比擬的優(yōu)勢,在該特點(diǎn)下,本文就微信小程序游戲的發(fā)展現(xiàn)狀和其社交屬性進(jìn)行嘗試性的歸納總結(jié),最后得出了小程序游戲在某種程度上不能完全取代游戲APP,反而兩者之間更多的是相輔相成的關(guān)系,未來小程序游戲如果想要得到更大的發(fā)展,勢必離不開游戲作為新媒體社交平臺的方向,如何利用好社交動機(jī)、競爭動機(jī),是小程序未來的發(fā)展方向。3、重點(diǎn)介紹完成任務(wù)的可能思路、方案和計劃首先設(shè)計系統(tǒng)框架,如下圖所示:根據(jù)上圖系統(tǒng)結(jié)構(gòu),選用微信小程序開發(fā)

13、流程為:(1)注冊小程序開發(fā)賬號,獲取小程序開發(fā)的ID,同時下載開發(fā)工具;創(chuàng)建空白小程序,并了解小程序的項(xiàng)目結(jié)構(gòu)和文件構(gòu)成;研究項(xiàng)目的wxml,wxss和js代碼(js推薦多用ES5、ES6),頁面如何跳轉(zhuǎn),事件如何觸發(fā)2.1.1小程序的文件結(jié)構(gòu)使用微信Web開發(fā)工具新建一個項(xiàng)目,框架會自動生成描述整體程序的APP和多個描述頁而的pag改件。完整的小程序主要組成有:一個入口文件:app.js,一個全局樣式:app.wxss,一個全局配置:app.Json。(2)在頁面pages下將頁而安裝文件夾劃分,每個頁而存在4個文件,分別是:視圖層:wxml文件、wxs墳件;邏輯層:Json交件(頁面配置

14、,不是必須)。以及WXML如何編寫等。閉合標(biāo)簽,css動畫對<<textarea/>組件無效。(3)<navigator/>是頁面鏈接,和HTML中超鏈接標(biāo)簽<a/>一樣,主要進(jìn)行頁而跳轉(zhuǎn)控制。鏈接的內(nèi)容可以是一個字、詞或者一幅圖片,通過點(diǎn)擊內(nèi)容實(shí)現(xiàn)頁而的跳轉(zhuǎn)。(4) <canvas/>主要用于繪制圖形,其本身是一塊無色透明區(qū)域,并沒有繪制的能力,僅僅是圖形容器,需要調(diào)節(jié)相關(guān)的應(yīng)用程序編程接口(Application ProgrammingInterface, API)來完成實(shí)際的繪圖任務(wù)。完成微信小程序開發(fā)之后,將其接入服務(wù)器,步驟如下:

15、(1)小程序注冊:在微信公眾平臺官網(wǎng)首頁()注冊并提交注冊信息、完善主體信息和管理員信息。(2)完善小程序信息:完善小程序的基本信息如名稱、頭像及服務(wù)范圍等。開發(fā)前需綁定開發(fā)者并獲取APPID,以保證程序可以通過手機(jī)進(jìn)行掃碼測試。(3)開發(fā)小程序:下載安裝微信開發(fā)者工具,微信官方提供了一套完整的開發(fā)框架,開發(fā)者可以根據(jù)微信開發(fā)文檔進(jìn)行小程序的開發(fā)與調(diào)試。(4)代碼審核及發(fā)布:小程序開發(fā)完成后,不能夠直接發(fā)布,需提交代碼與開發(fā)配置信息提交審核,完成后尚可發(fā)布。之后根據(jù)下圖實(shí)現(xiàn)客戶端與服務(wù)器的交互設(shè)計。在微信 Web 開發(fā)工具中,視圖和邏輯分開配置,卻能相互聯(lián)系 , 選用 MVC 模式的開發(fā)。這樣

16、開發(fā)起來邏輯分明,更有助于開發(fā)者的技術(shù)實(shí)現(xiàn)。本設(shè)計的小程序客戶端的MVC模式設(shè)計原理如下圖:4、所需的主要儀器和設(shè)備等微型計算機(jī),Windows系統(tǒng),微信小程序APPID,騰訊云小程序主機(jī),微信Web開發(fā)者工具。5、所需的資料和主要參考文獻(xiàn)1張文敏.微信小程序游戲的發(fā)展現(xiàn)狀及其社交屬性J.新聞研究導(dǎo)刊,2018,9(14):108.2程子珍. 基于微信小程序的網(wǎng)上購物系統(tǒng)的設(shè)計與實(shí)現(xiàn)D.首都經(jīng)濟(jì)貿(mào)易大學(xué),2018.3孔祥龍.Android平臺連連看游戲控制邏輯設(shè)計與實(shí)現(xiàn)J.電腦知識與技術(shù),2017,13(03):206-208.4范光明. 基于微信小程序的行車記錄系統(tǒng)的設(shè)計與實(shí)現(xiàn)D.吉林大學(xué),

17、2018.5王玉洋. 基于微信小程序的移動學(xué)習(xí)平臺環(huán)境構(gòu)建與系統(tǒng)設(shè)計開發(fā)D.南京大學(xué),2018.6任丕明. 基于Anbroid平臺的教育游戲的研究與實(shí)現(xiàn)D.東北石油大學(xué),2013.7趙海國,屈洋.連連看游戲的設(shè)計及其實(shí)現(xiàn)J.湖南理工學(xué)院學(xué)報(自然科學(xué)版),2015,28(03):39-41+51.8李婧. 基于Android平臺的手機(jī)游戲設(shè)計與實(shí)現(xiàn)D.東南大學(xué),2017.9黃日勝,王偉強(qiáng),陳樂,何瑞龍.基于P2P與PV3D的3D連連看游戲設(shè)計J.軟件導(dǎo)刊,2012,11(06):77-79.10郭毅棋.基于WEB的紙鈔連連看游戲的設(shè)計與實(shí)現(xiàn)J.福建電腦,2010,26(09):136-137+

18、100.11孫宇嬌. 手機(jī)游戲交互界面設(shè)計的優(yōu)化研究D.北京交通大學(xué),2017.12高廣宇.手機(jī)游戲交互界面的設(shè)計與實(shí)現(xiàn)研究J.北京印刷學(xué)院學(xué)報,2018,26(09):32-35+53. 學(xué)生姓名 (簽名)日期: 年 月 日指導(dǎo)教師評語:(建議填寫內(nèi)容:對學(xué)生提出的方案給出評語,明確是否同意開題,提出學(xué)生完成上述任務(wù)的建議、注意事項(xiàng)等) 指導(dǎo)教師 _(簽名)日期: 年 月 日注:1. 本開題報告,須雙面打印。由學(xué)生填寫并經(jīng)指導(dǎo)老師審核、評價;2. 本開題報告應(yīng)按畢業(yè)設(shè)計(論文)裝訂要求,裝訂在“畢業(yè)設(shè)計(論文)”文本內(nèi),學(xué)院存檔。摘要連連看是一款界面友好,操作簡單,富有趣味性的小游戲。用戶在

19、任何時間、任何地點(diǎn)都能通過電腦或者手機(jī)等終端登錄游戲并且進(jìn)行游戲操作,所以該游戲成為如今世界范圍內(nèi)最受歡迎的游戲之一。本文基于微信“小程序”對連連看游戲進(jìn)行了設(shè)計與實(shí)現(xiàn),通過在微信平臺注冊的APPID和下載的Web開發(fā)者工具作為設(shè)計環(huán)境,選用分類搜索算法作為游戲邏輯算法,完成小游戲系統(tǒng)原型搭建,并且在客戶端和服務(wù)器之間實(shí)現(xiàn)交互。最后對小游戲進(jìn)行功能測試和不同手機(jī)終端運(yùn)行性能的測試,測試結(jié)果表明小游戲可正常運(yùn)行,完全符合設(shè)計要求。關(guān)鍵詞:微信小程序,連連看游戲,圖形用戶界面IAbstractLianliankan is a small game with friendly interface,

20、simple operation and interesting taste. The user can log in to the game and play games through a terminal such as a computer or a mobile phone at any time and any place, so the game becomes one of the most popular games in the world today.This paper designs and implements Lianliankan games based on

21、WeChat "small program". Through the APPID registered on WeChat platform and downloaded Web developer tools as the design environment, the classification search algorithm is selected as the game logic algorithm to complete the prototype construction of the small game system. And interacting

22、 between the client and the server. Finally, the function test of the small game and the test performance of different mobile terminals are tested. The test results show that the small game can run normally and fully meet the design requirements.Keywords: WeChat applet,Lianliankan Game,graphical use

23、r interfaceII目錄摘要IAbstractII第1章 緒論11.1 研究背景11.2 微信小程序游戲的發(fā)展現(xiàn)狀11.3 前景意義21.4 小游戲帶來的思考21.5 本章小結(jié)3第2章 相關(guān)技術(shù)簡介42.1 微信小程序42.2 小程序與小游戲42.3 小游戲引擎62.4 微信小游戲Adapter6第3章 需求分析73.1 小程序開發(fā)流程73.2 系統(tǒng)業(yè)務(wù)流程分析73.3 系統(tǒng)框架83.4 小游戲邏輯算法8第4章 總體設(shè)計114.1 概述114.2 系統(tǒng)功能11第5章 詳細(xì)設(shè)計與系統(tǒng)實(shí)施135.1 常用API135.2 程序流程圖135.3 連連看小游戲的系統(tǒng)設(shè)計與實(shí)現(xiàn)145.4 客戶端與

24、服務(wù)器的交互設(shè)計155.5 客戶端的MVC模式設(shè)計16第6章 系統(tǒng)測試256.1 測試方案256.2功能測試256.3性能測試266.4本章小結(jié)27第7章 總結(jié)與展望286.1 總結(jié)286.2 展望28參考文獻(xiàn)30致謝32畢業(yè)設(shè)計(論文)1 緒論基于微信小程序客戶端的網(wǎng)上單詞查詢系統(tǒng)是web2.0與微信小程序相結(jié)合的共同產(chǎn)出物,它集合了微信小程序開發(fā)、ThinkPHP5 服務(wù)器開發(fā)、數(shù)據(jù)庫、網(wǎng)絡(luò)等多種當(dāng)下的流行技術(shù)于一體,用戶可以通過掃一掃小程序碼快速查詢單詞,背單詞,充分利用碎片化時間來達(dá)到學(xué)單詞記單詞的目的。1.1項(xiàng)目研究的背景和意義微信是騰訊公司于2011年1月21日推出的一個為智能終端

25、提供即時通訊服務(wù)的免費(fèi)應(yīng)用程序,截止到2016年第二季度,微信已經(jīng)覆蓋中國 94% 以上的智能手機(jī),月活躍用戶達(dá)到 8.06億。微信平臺提供公眾平臺、小程序、朋友圈、消息推送等功能,作為連接10億用戶社交平臺,微信擁有著無限的可能性。本文主要通過微信提供小程序平臺,完成基于微信小程序的單詞查詢系統(tǒng)的設(shè)計與實(shí)現(xiàn)。在這個信息無比發(fā)達(dá)、充滿誘惑的時代,我們?nèi)绾纬浞掷靡苿踊ヂ?lián)網(wǎng)鼓勵人們把時間充分利用學(xué)習(xí)上。本文基于對這個問題的基本思考,提出基于微信小程序的單詞查詢系統(tǒng)設(shè)計理念,針對在英文單詞學(xué)習(xí)中普遍存在著缺乏語言環(huán)境的情況,以ThinkPHP5 為編程語言,結(jié)合MYSQL設(shè)計并開發(fā)了一個

26、功能比較完善的英文單詞綜合學(xué)習(xí)系統(tǒng)。該系統(tǒng)在實(shí)現(xiàn)查詢單詞、學(xué)習(xí)單詞、復(fù)習(xí)單詞等功能的同時,也為學(xué)習(xí)者提供了豐富的語段,從而創(chuàng)造了良好的語言環(huán)境,提高學(xué)習(xí)英文單詞的效率。也意圖通過單詞學(xué)習(xí)小程序的設(shè)計即實(shí)現(xiàn),呼吁人們不要沉迷于這個花花世界不能自拔,要多利用如此優(yōu)越的移動互聯(lián)網(wǎng)環(huán)境進(jìn)行學(xué)習(xí)。1.2論文的主要研究工作本文所研究的小程序單詞查詢系統(tǒng)是一個簡潔實(shí)用的單詞查詢系統(tǒng),設(shè)計風(fēng)格主要以簡潔實(shí)用為主,主要想通過設(shè)計簡單實(shí)用的單詞查詢系統(tǒng),幫助用戶提高學(xué)習(xí)單詞的興趣以及單詞記憶的效率。本系統(tǒng)由后臺服務(wù)器、微信小程序單詞查詢客戶端、數(shù)據(jù)管理系統(tǒng)三部分組成。由于系統(tǒng)的系統(tǒng)模塊較多,本文的主要工作為設(shè)計及

27、實(shí)現(xiàn)微信小程序客戶端和后臺服務(wù)的交互及數(shù)據(jù)庫的設(shè)計。根據(jù)以上的需求,整個微信小程序單詞查詢系統(tǒng)項(xiàng)目采用 B2C 的架構(gòu),開發(fā)方法采用服務(wù)端、客戶端、數(shù)據(jù)管理三端分離的架構(gòu)模式。其中服務(wù)端采用 ThinkPHP5 和 MySQL 構(gòu)建 REST API;客戶端采用微信小程序來實(shí)現(xiàn),通過向服務(wù)器 API 發(fā)送 http 通信請求獲取數(shù)據(jù),來完成自身的功能行為邏輯;數(shù)據(jù)管理系統(tǒng)作為管理或者運(yùn)營人員的數(shù)據(jù)管理后臺,同樣通過向服務(wù)端請求數(shù)據(jù),實(shí)現(xiàn)商品信息、訂單數(shù)據(jù)和狀態(tài)的管理。其中論文的主要工作是在微信小程序單詞查詢客戶端系統(tǒng)實(shí)現(xiàn)獲取用戶息,單詞查詢、單詞語境學(xué)習(xí),歷史單詞,單詞復(fù)習(xí)等模塊。本文重點(diǎn)描述

28、了以上幾大模塊的設(shè)計與實(shí)現(xiàn)。1.3論文的特色主要有以下幾點(diǎn):(1)微信小程序單詞查詢系統(tǒng)針對在英文單詞學(xué)習(xí)中普遍存在著缺乏語言環(huán)境的情況,在實(shí)現(xiàn)查詢單詞、學(xué)習(xí)單詞、復(fù)習(xí)單詞等功能的同時,也為學(xué)習(xí)者提供了豐富的語段,從而創(chuàng)造了良好的語言環(huán)境,提高學(xué)習(xí)英文單詞的效率。(2)本系統(tǒng)設(shè)計實(shí)現(xiàn)采用面向?qū)ο蟮拈_發(fā)方法,小程序客戶端采用了全局的 MVC 模式設(shè)計控制,頁面實(shí)現(xiàn)采用 template 模板增加模塊的復(fù)用性,客戶端通過向服務(wù)器REST API 發(fā)送 http 請求獲取數(shù)據(jù)。1.4論文結(jié)構(gòu)第 1 章:引言。從本文主要研究內(nèi)容出發(fā),闡述了項(xiàng)目的背景及意義,結(jié)合分析國內(nèi)外的現(xiàn)狀以及目前單詞學(xué)些領(lǐng)域面臨

29、的機(jī)遇和挑戰(zhàn),給出項(xiàng)目概述以及本文的主要工作和本文組織結(jié)構(gòu)。第 2 章:系統(tǒng)架構(gòu)和關(guān)鍵技術(shù)。主要介紹了項(xiàng)目總的系統(tǒng)架構(gòu)和開發(fā)環(huán)境,并對開發(fā)過程中所需的關(guān)鍵技術(shù)做了簡要介紹。第 3 章:微信小程序單詞查詢系統(tǒng)的需求分析。進(jìn)行了系統(tǒng)的業(yè)務(wù)及數(shù)據(jù)流分析, 將系統(tǒng)分成多個不同的功能模塊進(jìn)行 UML 分析,并描述每一模塊需要實(shí)現(xiàn)的功能。第 4 章:微信小程序網(wǎng)上單詞查詢系統(tǒng)的詳細(xì)設(shè)計與功能實(shí)現(xiàn)。介紹了項(xiàng)目的總體架構(gòu)以及開發(fā)環(huán)境,數(shù)據(jù)庫的設(shè)計與實(shí)現(xiàn),單詞查詢系統(tǒng)開發(fā)過程中客戶端與服務(wù)器的交互原理、客戶端的 MVC 模式設(shè)計以及各個模塊設(shè)計與實(shí)現(xiàn)的詳細(xì)介紹。第 5 章:單詞查詢系統(tǒng)軟件測試與分析。結(jié)合 po

30、stman 測試工具和微信開發(fā)者工具對系統(tǒng)各個模塊的進(jìn)行測試,使系統(tǒng)的功能和性能達(dá)到運(yùn)行要求。第 6 章:總結(jié)與展望。結(jié)合本論文已完成的各項(xiàng)工作進(jìn)行總結(jié),并提出需要注意的問題。1.5本章小結(jié)本章為引言部分。1.1 節(jié)中主要闡述了微信小程序單詞查詢系統(tǒng)的項(xiàng)目背景及其意義;1.2 小節(jié)研究國內(nèi)相關(guān)系統(tǒng)的研究現(xiàn)狀,體現(xiàn)了微信小程序單詞查詢系統(tǒng)面向中小型商店對比傳統(tǒng)線上單詞查詢系統(tǒng)的優(yōu)勢;1.3 小節(jié)中明確了本文在項(xiàng)目中的主要研究工作;1.4 小節(jié)總結(jié)了論文的主要特色;1.5 小節(jié)列出了論文的撰寫組織結(jié)構(gòu),進(jìn)一步明確了本文的組織框架和系統(tǒng)模塊實(shí)現(xiàn)設(shè)計計劃。592 系統(tǒng)相關(guān)技術(shù)研究本章主要安介紹了本微信

31、小程序單詞查詢系統(tǒng)在其開發(fā)過程中所用到的關(guān)鍵技術(shù),其中包括微信小程序的 MINA 框架、ThinkPHP5 框架、REST API 的構(gòu)造、微信支付技術(shù)、MySQL 數(shù)據(jù)庫五部分。本課題的設(shè)計與實(shí)現(xiàn)主要就是建立在這些理論知識的掌握和應(yīng)用之上。2.1 微信小程序微信小程序是一種全新的連接用戶與服務(wù)的方式。小程序?yàn)橛脩籼峁┝擞|手可及、用完即走的輕便服務(wù),主要體現(xiàn)在用戶獲取小程序、使用小程序方便快捷的服務(wù)理念上。用戶可以在線下掃一掃或者公眾號關(guān)聯(lián)小程序碼獲取小程序應(yīng)用,或者可以在微信的發(fā)現(xiàn)頁面搜索小程序,由于小程序的整個文件占用內(nèi)存空間很小,用戶下載安裝小程序的過程消耗幾乎感知不到,所以從用戶獲取小

32、程序到點(diǎn)擊進(jìn)入開始使用小程序應(yīng)用的速度非常快。小程序多入口獲取和觸手可及用完即走的使用體驗(yàn)降低了器傳播和獲取用戶的成本,并且可以實(shí)現(xiàn)原生 APP 的基本功能,更加適合單詞查詢等學(xué)習(xí)類系統(tǒng)的呈現(xiàn)。MINA 框架是微信團(tuán)隊(duì)為小程序開發(fā)提供的框架名字,通過下面的 MINA 框架圖我們可以看到三大部分:邏輯層、視圖層和系統(tǒng)層。如圖2.1。圖 2.1微信 MINA 框架架構(gòu)圖(1)邏輯層邏輯層是 MINA 的服務(wù)中心,由微信客戶端啟用異步線程單獨(dú)加載運(yùn)行。頁面渲染所需的數(shù)據(jù)、頁面交互處理邏輯都在邏輯層中實(shí)現(xiàn)。小程序中的各個頁面可以通過邏輯層的函數(shù)實(shí)現(xiàn)數(shù)據(jù)管理、網(wǎng)絡(luò)通信、應(yīng)用生命周期管理和頁面路由。其中,

33、小程序中的每個頁面都有與其業(yè)務(wù)邏輯相對應(yīng)的生命周期,這個由頁面邏輯層的 page()函數(shù)實(shí)現(xiàn), 生命周期控制中主要包括以下方法:onLoad 方法監(jiān)聽頁面加載,onShow 方法監(jiān)聽頁面的顯示,onReady 方法監(jiān)聽頁面初次渲染完成,onHide 方法監(jiān)聽頁面的隱藏,onUnload 方法監(jiān)聽頁面卸載,不同的業(yè)務(wù)要在不同的生命周期方法函數(shù)內(nèi)實(shí)現(xiàn)。微信小程序開發(fā)框架的邏輯層是由 JavaScript 實(shí)現(xiàn)。在 JavaScript 的基礎(chǔ)上,微信團(tuán)隊(duì)針對小程序項(xiàng)目做了一些適當(dāng)?shù)男薷?,以便提高開發(fā)小程序的效率。主要修改包括: 增加 app 和 page 方法,進(jìn)行程序和頁面的注冊;提供豐富的 A

34、PI,如掃一掃、支付等微信特有的能力;每個頁面有獨(dú)立的作用域,并提供模塊化能力等。邏輯層的實(shí)現(xiàn)就由各個頁面的.js 腳本文件負(fù)責(zé),微信小程序的邏輯層響應(yīng)視圖層的事件處理,并將處理結(jié)果返回到視圖層。但由于小程序并非運(yùn)行在瀏覽器中,所以JavaScript 在 Web 中的一些能力無法使用,如 document、window 等。(2)視圖層視圖層提供了一套類似 HTML 標(biāo)簽的語言以及一系列基礎(chǔ)組件。開發(fā)者使用WXML 文件來搭建頁面的基礎(chǔ)視圖結(jié)構(gòu),使用 WXSS 文件來控制頁面的展現(xiàn)樣式。視圖層就是頁面.wxml 文件與.wxss 文件的集合,由組件來進(jìn)行設(shè)計展示。微信小程序在邏輯層將數(shù)據(jù)進(jìn)行

35、處理后發(fā)送給視圖層展現(xiàn)出來,同時監(jiān)聽視圖層的事件。數(shù)據(jù)在視圖層借助組件的設(shè)計展現(xiàn),組件是視圖的基本組成單元。(3)系統(tǒng)層系統(tǒng)層主要包括臨時數(shù)據(jù)或緩存、文件存儲、網(wǎng)絡(luò)存儲與調(diào)用。例如頁面臨時數(shù)據(jù)緩存需要在 page()中使用 setData 函數(shù)將數(shù)據(jù)從邏輯層發(fā)送到視圖層。文件存儲和網(wǎng)絡(luò)存儲與調(diào)用則需要調(diào)用相應(yīng)的微信 API 接口來實(shí)現(xiàn),如 wx.request 接口可以進(jìn)行 http 網(wǎng)絡(luò)請求,通過定義請求的 url、請求參數(shù)、請求方法以 json 配置,將請求結(jié)果分為 success 和 fail 兩種方式處理。除此之外,項(xiàng)目根目錄下的三個 app.wxss、app.js、app.json

36、文件是全局性的系統(tǒng)文件,負(fù)責(zé)小程序項(xiàng)目的全局公共樣式、小程序公共邏輯和小程序公共配置的實(shí)現(xiàn)。2.2 ThinkPHP 5 框 架ThinkPHP 是一個開源的、面向?qū)ο蟮妮p量級 PHP 開發(fā)框架,ThinkPHP5 主要特性包括:1、遵循 PSR-2、PSR-4 規(guī)范。2、支持 Composer。3、支持單元測試。4、安全機(jī)制,詳細(xì)的日志能幫你輕輕松松的做到問題定位。5、減少核心依賴,增加了擴(kuò)展的靈活性,支持命令行指令擴(kuò)展。6、具備優(yōu)秀的性能和 REST 支持,支持遠(yuǎn)程調(diào)試,優(yōu)化了 API 開發(fā)工作。7、惰性加載機(jī)制。8、路由、配置和自動加載的緩存機(jī)制。Think PHP 在項(xiàng)目中的配置,一個

37、項(xiàng)目下可以容納多個子系統(tǒng),例如前端系統(tǒng)和后端管理系統(tǒng)等等。在項(xiàng)目中包括公共函數(shù)文件夾 Common、系統(tǒng)配置文件夾 Conf(其中包含該項(xiàng)目的所有配置信息,包括數(shù)據(jù)庫和系統(tǒng)常量以及模板選擇和緩存、調(diào)試、日志等等)、源代碼儲存文件夾 Lib(分?jǐn)?shù)據(jù)庫表達(dá)與處理的 Model 文件夾和程序源代碼的 Action 文件夾)、支持多種語言的 Lang 文件夾、文件緩存的 Runtime 文件夾以及網(wǎng)頁模板的 Tpl 文件夾。此外 index.php 是 Think PHP 的入口文件夾。2.3 MySQL 數(shù)據(jù)庫MySQL數(shù)據(jù)庫被非常多的編程人員使用,MySql數(shù)據(jù)庫適用于中小型程序的數(shù)據(jù)存儲,可以和

38、JAVA技術(shù)進(jìn)行很好的搭配使用。MySql數(shù)據(jù)庫非常適合剛學(xué)習(xí)編程的人進(jìn)行學(xué)習(xí),首先從下載上來說,直接到官方網(wǎng)站或者百度上搜索就能搜索到MySql的下載地址,下載完成之后直接點(diǎn)擊安裝文件,傻瓜式一鍵安裝完成就可以正常使用了,非常的簡單。MySql語句也是通俗易懂,都有固定的語句格式,建數(shù)據(jù)庫、建表、刪除表、添加、修改、刪除、查詢等語句直接套用格式就可以正常使用。最重要的是JAVA、PHP、ASP等目前主流的編程語言,都支持和MySql數(shù)據(jù)庫的連接,這對于程序中各種數(shù)據(jù)的相互傳輸以及存儲有很大的幫助。Mysql數(shù)據(jù)庫非常重視對于數(shù)據(jù)安全的保護(hù),可以給予程序中的運(yùn)行的大量數(shù)據(jù)充分的安全保證。2.4

39、本章小結(jié)在本章中,主要研究了本文工作中主要用到的微信小程序框架關(guān)鍵技術(shù)闡述了選擇 MySQ L 作為項(xiàng)目的數(shù)據(jù)庫的優(yōu)勢以及其系統(tǒng)架構(gòu)介紹。這些都是本文在項(xiàng)目中所做工作的關(guān)鍵理論基礎(chǔ)。畢業(yè)設(shè)計(論文)析3 系統(tǒng)分析軟件工程活動是“生產(chǎn)一個最終滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟”。軟件工程包括了需求、設(shè)計、編碼實(shí)現(xiàn)、測試等內(nèi)容,需求分析作為軟件工程中重要的一步,主要作用是對用戶想要解決的問題和想法進(jìn)行詳細(xì)的分析,分層次的分析問題,從輸入、問題處理到結(jié)果的輸出,準(zhǔn)確的表述系統(tǒng)必須完成那些工作,對系統(tǒng)的的分析形成完整具體的要求。本章正是通過系統(tǒng)需求分析和 UML 用例圖模型兩方面研究了微信小

40、程序小程序單詞查詢系統(tǒng)的設(shè)計。3.1系統(tǒng)業(yè)務(wù)流程分析本文在項(xiàng)目系統(tǒng)中的主要工作是完成小程序單詞查詢系統(tǒng)客戶端、服務(wù)器和數(shù)據(jù)庫的開發(fā)和設(shè)計。在微信小程序單詞查詢系統(tǒng)客戶端部分,消費(fèi)者用戶可以進(jìn)入到微信小程序單詞查詢系統(tǒng)客戶端,進(jìn)行商品瀏覽、商品分類檢索、添加單詞查詢車,管理單詞查詢車和個人信息,下單等主要網(wǎng)上單詞查詢操作。在數(shù)據(jù)庫部分,通過合理的設(shè)計,使各個數(shù)據(jù)表之間擁有可靠的關(guān)聯(lián)關(guān)系,并具備一定的數(shù)據(jù)庫可擴(kuò)展性。圖 3. 1 小程序客戶端系統(tǒng)的業(yè)務(wù)流程圖微信小程序客戶端系統(tǒng)的單詞查詢流程圖 3.1 所示,當(dāng)用戶獲取到小程序后,可以選擇獲取是否允許獲取個人信息,也可以瀏覽小程序的各個頁面或者商品

41、。當(dāng)用戶在瀏覽和分類檢索商品的過程中,遇到符合自己心意的商品時,則可以選擇把商品加到單詞查詢車, 當(dāng)用戶結(jié)束挑選商品后,可以進(jìn)入到單詞查詢車頁面進(jìn)行結(jié)算商品,結(jié)算商品時,用戶若為未登錄狀態(tài),需要返回第一步允許微信獲取個人信息,并補(bǔ)充具體的個人信息(如地址、電話等),此時,則可以進(jìn)行下單,進(jìn)入到支付界面進(jìn)行訂單結(jié)算,根據(jù)不同的支付結(jié)果生成不同的歷史訂單信息。至此單詞查詢流程結(jié)束。3.2系統(tǒng)數(shù)據(jù)流分析本微信小程序單詞查詢工具項(xiàng)目的數(shù)據(jù)主要包括用戶和單詞數(shù)據(jù)。用戶在小程序客戶端界面發(fā)生的交互動作是業(yè)務(wù)的數(shù)據(jù)來源,根據(jù)用戶行為和查詢系統(tǒng)的架構(gòu)設(shè)計分析,業(yè)務(wù)系統(tǒng)的數(shù)據(jù)流處理主要包括客戶端與本地緩存、客戶

42、端與系統(tǒng)服務(wù)器兩部分。圖 3.2 系統(tǒng)業(yè)務(wù)數(shù)據(jù)流圖如上圖 3.2 統(tǒng)業(yè)務(wù)數(shù)據(jù)流圖所示,用戶可以通過微信小程序待查詢系統(tǒng)客戶端攜帶個人信息請求單詞信息。小程序客戶端接收用戶的行為請求,在控制層進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并將處理結(jié)果以頁面展示的方式返回給用戶,如果用戶請求的數(shù)據(jù)涉及到數(shù)據(jù)庫的查詢和更新,客戶端會將用戶需求的請求參數(shù)通過模型層與服務(wù)器通信,在服務(wù)器部分進(jìn)行數(shù)據(jù)的校驗(yàn)和處理,如果用戶的請求合法則會在數(shù)據(jù)庫中進(jìn)行相應(yīng)的響應(yīng)操作,服務(wù)器處理完畢后會將結(jié)果返回給客戶端。在系統(tǒng)設(shè)計中,由于查詢歷史的數(shù)據(jù)量較小,與查詢歷史相關(guān)的數(shù)據(jù)存放在小程序本地緩存中,可以為用戶提供更快速的數(shù)據(jù)反饋效果。系統(tǒng)功

43、能總體功能分析根據(jù)分析用戶查詢單詞的基本需求,對比分析單詞查詢 APP 和 PC 單詞查詢網(wǎng)站上的主要功能模塊,本著小程序開發(fā)設(shè)計的三大原則:在功能方面,小程序要比原生 APP 更單一;設(shè)計方面,小程序要比原生 APP 更簡潔;在使用場景方面,小程序應(yīng)比原生 APP 更明確?;谛〕绦虻闹饕ㄎ?,小程序應(yīng)為用戶提供更加主題明確的服務(wù),盡量減少與查詢無關(guān)的不必要的功能模塊,為用戶提供用完即走、方便快捷的使用體驗(yàn)。根據(jù)以上分析,本小程序系統(tǒng)的業(yè)務(wù)邏輯模塊分為用戶登錄、單詞搜索、歷史記錄、查詢結(jié)果功能模塊,總體的系統(tǒng)功能模塊如下圖所示,本章將對各個功能模塊進(jìn)行詳細(xì)的需求分析。圖 3.3小程序客戶端整

44、體功能結(jié)構(gòu)圖從圖 3.3 功能結(jié)構(gòu)圖中,我們可以大致總結(jié)出小程序客戶端單詞查詢系統(tǒng)的幾個主要功能,包括用戶用戶登錄、單詞搜索、歷史記錄、查詢結(jié)果四大模塊,本文也主要是圍繞著這些功能模塊的設(shè)計和實(shí)現(xiàn)而展開。3.3 本章小結(jié)本章中主要對微信小程序單詞查詢系統(tǒng)客戶端的功能進(jìn)行了需求分析,其中 3.1、3.2小節(jié)是對小程序客戶端系統(tǒng)的業(yè)務(wù)流程圖和整個項(xiàng)目的數(shù)據(jù)流和整體的功能結(jié)構(gòu)進(jìn)行了分析,隨后在此基礎(chǔ)上,我們對小程序客戶端單詞查詢系統(tǒng)的主要功能模塊進(jìn)行了功能需求分析。這為接下來的小程序客戶端的功能設(shè)計和實(shí)現(xiàn)做好了基礎(chǔ)。4 系統(tǒng)設(shè)計與實(shí)現(xiàn)4.1項(xiàng)目總體架構(gòu)本項(xiàng)目在總體架構(gòu)上主要分為微信小程序客戶端、服務(wù)

45、器、數(shù)據(jù)管理三大部分。其中微信小程序客戶端部分主要利用微信小程序的“MINA”框架(WXML,WXSS,JavaScript)以及其提供的豐富組件,采用 MVC 的設(shè)計模式來完成客戶端界面和功能設(shè)計與實(shí)現(xiàn),客戶端可與消費(fèi)者用戶直接交互,提供流暢的單詞查詢體驗(yàn)。服務(wù)器端主要采用ThinkPHP5 和 MySQL 構(gòu)建 REST API 為客戶端提供數(shù)據(jù)接口,其中 ThinkPHP5 作為服務(wù)器開發(fā)的一個外部框架,可在消費(fèi)者用戶使用微信小程序單詞查詢系統(tǒng)瀏覽商品、加入單詞查詢車、下單等的業(yè)務(wù)邏輯中,實(shí)現(xiàn)客戶端與數(shù)據(jù)庫數(shù)據(jù)請求以及數(shù)據(jù)處理的關(guān)鍵部分。除了本地服務(wù)器的支持之外,微信小程序的客戶端實(shí)現(xiàn)的

46、部分功能還需要服務(wù)器編寫業(yè)務(wù)邏輯調(diào)用微信服務(wù)器的 API 接口來實(shí)現(xiàn)。MySQL 主要擔(dān)任數(shù)據(jù)庫的角色,可實(shí)現(xiàn)數(shù)據(jù)存儲、數(shù)據(jù)表設(shè)計等功能, MySQL 數(shù)據(jù)庫在與 TP5 服務(wù)器配合下向客戶端提供可訪問的數(shù)據(jù)接口。數(shù)據(jù)管理作為管理或者運(yùn)營人員的數(shù)據(jù)管理平臺,通過調(diào)用 API 從服務(wù)器的數(shù)據(jù)庫中獲取商品信息、訂單數(shù)據(jù)等。系統(tǒng)總體架構(gòu)圖如圖 4.1。圖 4.1系統(tǒng)總體架構(gòu)圖畢業(yè)設(shè)計(論文)現(xiàn)4.2項(xiàng)目開發(fā)方法及環(huán)境部署項(xiàng)目客戶端的開發(fā)過程采用面向?qū)ο蟮拈_發(fā)方法,充分利用面向?qū)ο蠓椒ㄖ械姆庋b性、繼承性和多態(tài)性的特點(diǎn),將系統(tǒng)劃分為相對獨(dú)立的多個模塊,每個模塊具有自己的功能設(shè)計和實(shí)現(xiàn)要求,在開發(fā)過程中可

47、以分模塊集中開發(fā)實(shí)現(xiàn),然后最后再將各個模塊組織和集成,這樣使得整個系統(tǒng)的結(jié)構(gòu)層次分明,也便于開發(fā)工作的管理。面向?qū)ο蟮能浖_發(fā)方法是解決軟件設(shè)計過程中所出現(xiàn)基礎(chǔ)性問題的的解決方案, 避免在開發(fā)中做重復(fù)的工作。進(jìn)行可重復(fù)使用性設(shè)計,在軟件的總體框架中可以將同一個功能模塊的不同業(yè)務(wù)部分的應(yīng)用通過面向?qū)ο蟮脑O(shè)計,以及模塊的復(fù)用來實(shí)現(xiàn)重復(fù)利用,減少開發(fā)得重復(fù)工作,提高開發(fā)效率。例如分析系統(tǒng)中通用的處理方法,將其封裝設(shè)計成相對獨(dú)立可重復(fù)使用的代碼作為基類,當(dāng)功能在系統(tǒng)中多個模塊應(yīng)用時,直接調(diào)用基類就可以。這樣會減少因?yàn)橹貜?fù)功能的代碼的復(fù)制修改而帶來的代碼質(zhì)量問題,同時也避免了代碼的冗余。從系統(tǒng)的角度進(jìn)行

48、分析,利用對象的單位作為基本構(gòu)造單元,可以使軟件系統(tǒng)變得模塊化、可復(fù)用性能好、易于維護(hù),同時便于優(yōu)化軟件結(jié)構(gòu)和質(zhì)量。項(xiàng)目的基礎(chǔ)環(huán)境基于 XAMPP(Apache+MySQL+PHP+PERL)一個功能強(qiáng)大的建站集成軟件包,本項(xiàng)目采用的是 XAMPP 的 7.1.12 版本 xampp-win32-7.1.12-0-VC14-installer 安裝包,選擇安裝的組件有 PHP、MySQL 和 Apache 服務(wù)器。項(xiàng)目選擇ThinkPHP 5 作為 web 開發(fā)框架,在 Git 倉庫中下載 ThinkPHP 5 5.0.7 版本的應(yīng)用項(xiàng)目和核心框架,與XAMPP 集成作為主要的業(yè)務(wù)邏輯和 AP

49、I 的開發(fā)語言和框架。在開發(fā)工具選擇上,單詞查詢系統(tǒng)客戶端采用的是微信 web 開發(fā)者工具來編寫微信小程序單詞查詢系統(tǒng)的主界面,采用PHPstorm 來開發(fā)服務(wù)器的 PHP API 代碼,使用 PostMan 作為服務(wù)器接口的測試工具,選用 Navicat 連接數(shù)據(jù)庫作為 MySQL 的可視化管理工具。4.3微信小程序單詞查詢系統(tǒng)的數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫的設(shè)計是軟件系統(tǒng)開發(fā)和建設(shè)中最基礎(chǔ)和最核心的部分,良好的數(shù)據(jù)庫設(shè)計可以讓系統(tǒng)具有更快更好的運(yùn)行速度。目前關(guān)系型數(shù)據(jù)庫是我國中小型系統(tǒng)的主流選擇。關(guān)系型數(shù)據(jù)庫的設(shè)計要有嚴(yán)格的設(shè)計規(guī)范,對軟件系統(tǒng)中的各類數(shù)據(jù)進(jìn)行有效的組織存儲和維護(hù),為軟件系統(tǒng)運(yùn)行中的數(shù)

50、據(jù)需求提供高效準(zhǔn)確的處理速度。在實(shí)現(xiàn)這個目標(biāo)的過程中數(shù)據(jù)庫的規(guī)范設(shè)計就顯得尤為重要,保持?jǐn)?shù)據(jù)存儲的一致性和完整性是提高數(shù)據(jù)存儲和處理效率的重要保障之一。在數(shù)據(jù)庫設(shè)計時,不僅需要滿足數(shù)據(jù)庫的設(shè)計準(zhǔn)則,還需要結(jié)合具體的業(yè)務(wù)知識分析出系統(tǒng)中的不同實(shí)體之間的關(guān)系,并確定這些實(shí)體之間的關(guān)系類型。本文根據(jù)小程序單詞查詢系統(tǒng)的功能需求分析,按照規(guī)范設(shè)計的要求,將對數(shù)據(jù)庫設(shè)計的概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫配置與實(shí)施進(jìn)行詳細(xì)分析與設(shè)計。4.3.1數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計的過程是將用戶的需求綜合抽象為一個信息結(jié)構(gòu)的過程,概念結(jié)構(gòu)是各類數(shù)據(jù)模型的共同基礎(chǔ)。E-R 圖是描述概念模型的有效工具。E-

51、R 圖由實(shí)體、屬性、聯(lián)系三個要素組成,例如本系統(tǒng)中單詞信息就是一個實(shí)體,它包含描述單詞的眾多屬性,聯(lián)系表示實(shí)體之間的關(guān)系,實(shí)體與實(shí)體之間的聯(lián)系可以分為三種:一對一、一對多、多對多。本文從系統(tǒng)的業(yè)務(wù)和功能模塊分析確定系統(tǒng)需要的實(shí)體集,以及實(shí)體與實(shí)體之間的聯(lián)系。小程序單詞查詢系統(tǒng)中關(guān)鍵的實(shí)體信息如下:(1)單詞查詢系統(tǒng)的單詞信息實(shí)體圖的屬性包含單詞 id、單詞英文拼寫、單詞音標(biāo)、單詞中文翻譯、單詞屬性、單詞短語,如圖 4.2 所示:圖 4.2單詞信息實(shí)體圖(2)單詞查詢系統(tǒng)的用戶信息實(shí)體圖的屬性主要包含用戶 id,openid,用戶昵稱等信息, 如圖 4.3 所示:圖 4.3用戶信息實(shí)體圖(3)單

52、詞查詢系統(tǒng)的單詞音標(biāo)信息實(shí)體圖的屬性主要包含音標(biāo) id,音標(biāo)類別、音標(biāo)拼寫等信息, 如圖 4.4 所示:圖 4.4音標(biāo)信息實(shí)體圖(4)單詞查詢系統(tǒng)的單詞屬性信息實(shí)體圖的屬性主要包含屬性 id,屬性類別、中文翻譯等信息, 如圖 4.5 所示:圖 4.5屬性信息實(shí)體(5)單詞查詢系統(tǒng)的單詞短語信息實(shí)體圖的屬性主要包含短語 id,英文短語、中文翻譯等信息, 如圖 4.6 所示:圖 4.6短語信息實(shí)體圖由系統(tǒng)的實(shí)體以及實(shí)體與實(shí)體之間的聯(lián)系可得出系統(tǒng) E-R 圖,小程序單詞查詢系統(tǒng)的總體 E-R 圖如圖 4.7 所示:圖 4.7系統(tǒng)總體 E-R 圖在概念模型的設(shè)計中,采用 E-R 圖來表示系統(tǒng)需求所抽象

53、成的信息結(jié)構(gòu),其中用矩形表示 E-R 圖中的實(shí)體,橢圓形表示屬性,菱形表示聯(lián)系。一個單詞信息表對應(yīng)多個屬性。4.3.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計根據(jù)概念結(jié)構(gòu)設(shè)計中的 E-R 圖進(jìn)行數(shù)據(jù)庫的規(guī)則轉(zhuǎn)換,將 E-R 圖實(shí)體和實(shí)體間的聯(lián)系轉(zhuǎn)換為關(guān)系模式,并確定關(guān)系模式中的屬性和碼。實(shí)體中的屬性與關(guān)系模式中的屬性相對應(yīng),實(shí)體中的碼與關(guān)系中的碼相對應(yīng)。本系統(tǒng)最后的數(shù)據(jù)模型以數(shù)據(jù)表的形式展現(xiàn), 具體說明了數(shù)據(jù)表中屬性名稱、主鍵、含義、約束條件,是否為空等信息,系統(tǒng)中主要的數(shù)據(jù)庫表設(shè)計詳細(xì)如下:(1)用戶信息表 user 基本數(shù)據(jù)表,如表 4.8。idint11否用戶idnamevrachar255否用戶昵稱open

54、idvrachar255否openidcreate_attimestamp是注冊時間remarkvarchar255是拓展備注update_attimestamp是更新時間delete_attimestamp是刪除時間表 4.8專題商品信息表(user)字段名 類型 大小 是否為空字段描述(2)用戶信息表 user 基本數(shù)據(jù)表,如表 4.9。idint11否單詞主鍵wordvarchar255否英文單詞voice_idvarchar255否單詞音標(biāo)propertyvarchar255否單詞屬性pharsevarchar255是單詞短語表 4.9單詞信息表(user)字段名類型大小是否為空字段描述(3)單詞音標(biāo)表voice基本數(shù)據(jù)表,如表 4.10。idint11否主題外鍵catvarchar255否類別voidvarchar255是英標(biāo)拼寫表 4.10單詞音標(biāo)信息表(user)字段名類型大小是否為空字段描述(4)單詞屬性表voice基本數(shù)據(jù)表,如表 4.11。idint11否主題外鍵catvarchar255否類別voidvarchar255英標(biāo)拼寫表 4.11單詞屬性信息表(user)字段名類型大小是否為空字段描述(5)單詞短語表 pharse 基本數(shù)據(jù)表,如表 4.12。idint11否單詞短語idpharsevarchar255否英文短語translateva

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論