




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
緒論1.1研究背景近幾年畢業(yè)大學(xué)生的數(shù)量與日俱增,由人社部統(tǒng)計:2023屆高校畢業(yè)生將達到1158萬人。隨著互聯(lián)網(wǎng)的普及和發(fā)展,大學(xué)生作為社會的新鮮血液,越來越多地依賴于網(wǎng)絡(luò)獲取信息。然而,在信息爆炸的時代,大學(xué)生面臨著信息過載的問題,同時也存在著信息差問題。信息差是指在獲取和利用信息的過程中,由于個人的知識、經(jīng)驗、能力等方面的局限性,導(dǎo)致對信息的理解和判斷出現(xiàn)偏差。這種現(xiàn)象在大學(xué)生群體中尤為明顯。基于此,本次畢業(yè)設(shè)計將設(shè)計實現(xiàn)一個用戶友好、易于操作的網(wǎng)站界面,為用戶帶來更直觀便捷的了解信息的渠道,能夠吸引更多用戶和提升用戶黏性。大學(xué)生科普網(wǎng)站上主要是關(guān)于學(xué)生需要了解的技能考試、熱門大賽、住房攻略、公司福利、基本常識、簡歷制作指南以及畢業(yè)生求職等信息。用戶可以在該網(wǎng)站上學(xué)習(xí)各種技能知識,瀏覽相關(guān)學(xué)習(xí)視頻,不僅如此,用戶還可以在論壇上相互交流互動,對熱門詞條進行搜索。該項目有助于用戶對最新資訊的掌握了解,有助于提高大學(xué)生的信息素養(yǎng),減少信息差現(xiàn)象,為他們的成長和發(fā)展創(chuàng)造良好的條件。1.2研究目的和意義1.2.1研究目的為滿足用戶查閱信息的需求,設(shè)計實現(xiàn)一個基于Vue的大學(xué)生活科普網(wǎng)站,通過科普內(nèi)容的傳播,幫助公眾了解最新的科研成果和科學(xué)技術(shù)的應(yīng)用,增強群體的創(chuàng)新意識和科學(xué)文化素質(zhì)??茖W(xué)技術(shù)與經(jīng)濟發(fā)展緊密相連,科普網(wǎng)站可以幫助公眾理解這兩者的結(jié)合點,從而對推動經(jīng)濟高質(zhì)量發(fā)展和經(jīng)濟轉(zhuǎn)型起到積極作用。科普內(nèi)容往往與人們的日常生活密切相關(guān),如食品安全、醫(yī)療衛(wèi)生、能源應(yīng)用等,這些信息的普及有助于提升人們的生活質(zhì)量和安全感?;ヂ?lián)網(wǎng)健康教育和醫(yī)學(xué)科普可以為公眾提供健康知識的學(xué)習(xí)平臺,增強對健康的自我掌控,改善民眾的健康素養(yǎng),推動醫(yī)療效果的整體改善。通過科普網(wǎng)站不僅可以有效地傳播應(yīng)急避險知識,提高公眾在面對自然災(zāi)害和突發(fā)事件時的應(yīng)對能力,科普網(wǎng)站還可以加強對環(huán)境保護和可持續(xù)發(fā)展的教育,引導(dǎo)公眾參與到環(huán)保行動中來,共同維護生態(tài)環(huán)境??破站W(wǎng)站通過有趣的互動和豐富的視覺內(nèi)容,能夠激發(fā)青少年對科學(xué)的興趣,培養(yǎng)未來的科學(xué)家和工程師。本網(wǎng)站通過后臺添加和管理文章信息、錄入文章內(nèi)容、用戶管理等,前臺用戶通過登錄系統(tǒng)、查看主題列表各個種類的文章獲取信息、發(fā)表文章和閱讀文章等。1.2.2研究意義基于Vue的大學(xué)生活科普網(wǎng)站是科普教育的重要載體,通過研究基于Vue的大學(xué)生活科普網(wǎng)站可以為科普教育提供更加便捷、高效的技術(shù)支持,推動科普教育的發(fā)展;基于Vue的大學(xué)生活科普網(wǎng)站可以通過圖文、音頻、視頻等多種形式展示科普內(nèi)容,豐富科普形式,提高用戶的學(xué)習(xí)興趣,還可以根據(jù)用戶的興趣和瀏覽歷史,為用戶提供個性化的科普內(nèi)容推薦,使用戶能夠更快速地找到自己感興趣的科普知識;基于Vue的大學(xué)生活科普網(wǎng)站是通過結(jié)合數(shù)字媒體技術(shù)和信息管理來實現(xiàn)對文章的高效管理,在管理員具備一定的計算機操作能力下提高文章管理效率。文章信息化,提高管理效率,為用戶提供更多和更便捷的服務(wù),簡化程序,聚焦于查詢?yōu)g覽文章方面的功能。1.3國內(nèi)外研究現(xiàn)狀1.3.1國內(nèi)研究現(xiàn)狀Vue.js是一種用于構(gòu)建用戶界面的漸進式JavaScript框架。與其他主流前端框架如React和Angular相比,Vue在某些方面有著其獨特的優(yōu)勢。從團隊使用Vue的實踐經(jīng)驗來看,Vue的使用方法相對簡單明了。它融合了React的組件化、prop、單向數(shù)據(jù)流等核心概念,同時也采納了Angular的模板語法,并加入了雙向數(shù)據(jù)綁定的特性。這使得在開發(fā)過程中,開發(fā)者能夠更加靈活地應(yīng)對不同的需求和場景。隨著前端技術(shù)的不斷發(fā)展,誕生了許多優(yōu)秀的前端開發(fā)框架,其中Vue.js開發(fā)框架以其簡單易學(xué)易用的特性,吸引了大量開發(fā)者,框架的完善程度和流行程度都在不斷提升[2]。隨著前端技術(shù)的不斷發(fā)展,誕生了許多優(yōu)秀的前端開發(fā)框架,其中Vue.js開發(fā)框架以其簡單易學(xué)易用的特性,吸引了大量開發(fā)者,框架的完善程度和流行程度都在不斷提升。國內(nèi)科普宣傳工作的開展仍以傳統(tǒng)宣傳形式為主,采用集中時間的定點宣傳。部分科普機構(gòu)、部門的門戶網(wǎng)站和科普專欄疏于管理,微信公眾號、微博等新媒體宣傳渠道也不及時更新,使得公眾對此類宣傳缺乏興趣??破招麄鞴ぷ魉_展的深度和廣度有限,很多地方的科普宣傳仍表現(xiàn)為科普講座、廣場宣傳等特定形式,缺少對聽眾需求的分析,無法針對受眾開展特定形式的宣傳活動,最后是宣傳效果沒有達到預(yù)期,從現(xiàn)有的圖書、美術(shù)作品和音像制品來看,其宣傳缺少交流性,所以需要基于當(dāng)前的網(wǎng)絡(luò)背景開發(fā)出具有革新性宣傳模式[8]。1.3.2國外研究現(xiàn)狀在國外,Vue.js的應(yīng)用發(fā)展非常廣泛,涵蓋了從簡單的示例項目到復(fù)雜的實際應(yīng)用。首先,在GitHub上有許多獲得大量Star的Vue.js項目,這些項目包括了各種不同類型和規(guī)模的應(yīng)用程序,如仿豆瓣電影webApp、仿手機QQ單頁面應(yīng)用、小米官網(wǎng)仿制版以及基于Vue2的知乎日報單頁應(yīng)用等。此外,還有一些涉及到后端開發(fā)和數(shù)據(jù)庫管理的項目,比如基于vue.js、node.js和mongodb開發(fā)的DoraCMS,這類項目可以幫助開發(fā)者更好地理解如何在實際項目中整合Vue.js與后端技術(shù)棧。此外,還有一些涉及到后端開發(fā)和數(shù)據(jù)庫管理的項目,比如基于vue.js、node.js和mongodb開發(fā)的DoraCMS,這類項目可以幫助開發(fā)者更好地理解如何在實際項目中整合Vue.js與后端技術(shù)棧。國外科普網(wǎng)站的研究現(xiàn)狀非常活躍且多元化。不同類型的網(wǎng)站上,科普內(nèi)容的比重差異較大。例如,門戶網(wǎng)站的科普內(nèi)容占總信息量比重相對較低,新聞媒體的科學(xué)新聞是重要版塊。然而,在英國和其他歐洲國家,學(xué)術(shù)機構(gòu)的網(wǎng)站的科學(xué)傳播內(nèi)容豐富。此外,也有一些特定的雜志,如Science,Nature,PNAS等,被大量研究者用來發(fā)表自己的觀點和研究成果[9]。這些雜志在科普工作中也起到了重要的作用。1.3主要研究內(nèi)容本文主要調(diào)研了解項目背景和國內(nèi)外研究現(xiàn)狀,明確解決的問題和實現(xiàn)技術(shù)。完成基于Vue的大學(xué)生活科普網(wǎng)站交互設(shè)計與實現(xiàn),通過本網(wǎng)站可以讓用戶更直觀、快速的了解查閱信息的渠道,通過搜索或瀏覽查看相關(guān)信息,幫助用戶科普更多大學(xué)期間的一些活動競賽等,也幫助用戶解決信息差問題。主要的研究重點主要有三點:一是瀏覽相關(guān)活動或競賽,可實時參加和收藏活動,并可隨時取消收藏和撤銷參加;二是可以查看在線論壇,評論文章內(nèi)容,并可進行收藏和點贊,以及發(fā)布自己的論壇文章和管理自己的文章評論;三是用戶能隨時查看自己參加的活動記錄以及點贊評論內(nèi)容。1.4論文的組織結(jié)構(gòu)本文一共分為七個不同的章節(jié),分別是:第一個章節(jié)是緒論,這個版塊主要闡述了國內(nèi)外針對本網(wǎng)站的研究現(xiàn)狀和對比,從而得出了本系統(tǒng)的主要研究內(nèi)容,以及研究背景與研究意義。第二個章節(jié)是開發(fā)工具與關(guān)鍵技術(shù),對本系統(tǒng)使用的開發(fā)工具進行了介紹,以及對關(guān)鍵開發(fā)技術(shù)的開發(fā)原理進行整理和分析,并對數(shù)據(jù)庫和前后端分離進行了說明。第三個章節(jié)是系統(tǒng)分析,結(jié)合網(wǎng)絡(luò)調(diào)查和現(xiàn)有活動申請系統(tǒng)出現(xiàn)的問題,進行業(yè)務(wù)描述和業(yè)務(wù)問題概述,對此類問題的業(yè)務(wù)流程和角色進行了分析,對系統(tǒng)用例進行了詳細的分析,從而得出本系統(tǒng)的開發(fā)結(jié)構(gòu)。第四個章節(jié)是系統(tǒng)設(shè)計,通過對系統(tǒng)的功能結(jié)構(gòu)和框架結(jié)構(gòu)進行繪制和分析,總結(jié)出了系統(tǒng)的總體設(shè)計,并對所有的功能模塊進行分析,繪制時序圖。其次進行數(shù)據(jù)庫設(shè)計,分別使用用例圖和ER圖對實體和數(shù)據(jù)庫關(guān)系進行了介紹,使用表格展示了所用到的所有數(shù)據(jù)庫表信息。最后確定了本系統(tǒng)的主要UI設(shè)計,完成系統(tǒng)的主要配色和版塊設(shè)計。第五個章節(jié)是系統(tǒng)實現(xiàn),該部分詳細介紹本系統(tǒng)的實現(xiàn)環(huán)境和核心功能,從首頁、分類列表、論壇中心、文章展示、個人中心等幾個模塊進行闡述。第六個章節(jié)是系統(tǒng)測試,主要介紹了本系統(tǒng)的測試環(huán)境,進行測試的目的,并記錄了測試用例,并對測試結(jié)果進行了詳細的分析。最后通過測試結(jié)果對系統(tǒng)的功能進行了修改與完善。第七個章節(jié)是總結(jié)與展望,是完成畢業(yè)設(shè)計期間的學(xué)習(xí)成長記錄和總結(jié),以及對未來的發(fā)展的期許與規(guī)劃。1.5本章小結(jié)本章節(jié)對本系統(tǒng)的前期準(zhǔn)備工作進行了詳細的介紹。從查閱資料到需求分析、原型分析、系統(tǒng)實現(xiàn)、測試修改的全過程,對國內(nèi)外的日程系統(tǒng)進行比對和分析,得出本系統(tǒng)開發(fā)的意義,并通過不斷的查閱資料,完成系統(tǒng)的前后端分離開發(fā),在這個過程中,學(xué)習(xí)到了很多新知識。2相關(guān)開發(fā)工具及技術(shù)2.1開發(fā)工具VisualStudioCode是一個運行于OSX、Windows和Linux之上的,針對于編寫現(xiàn)代Web和云應(yīng)用的跨平臺編輯器。VisualStudioCode為開發(fā)者們提供了對多種編程語言的內(nèi)置支持,同時也會為這些語言提供豐富的代碼補全和導(dǎo)航功能。JavaScript,TypeScript,Node.js和ASP.NET5開發(fā)者也將會獲得額外的工具集。2.2開發(fā)技術(shù)2.2.1Vue框架Vue.js是一套構(gòu)建用戶界面的漸進式框架。Vue.js采用了自底向上增量開發(fā)的設(shè)計,具有輕量,簡潔的特點。在Web應(yīng)用的開發(fā)中視圖層是Vue.js的核心庫主要關(guān)注的,Vue.js與其它的JavaScript庫和現(xiàn)有的項目進行整合的時候非常容易。并且Vue.js完全可以采用單文件組件配合相關(guān)的工具和支持的庫進行開發(fā)復(fù)雜的大型單頁面的Web應(yīng)用。Vue.js是基于HTML、CSS和JS的漸進式前端開發(fā)框架,用于構(gòu)建用戶界面。其組件化的編程模型,能夠高效地開發(fā)用戶界面。核心是重視用戶界面層,開發(fā)者能夠簡單上手,可以方便與第三方庫或已有的項目嵌套使用。Vue.js框架目錄結(jié)構(gòu)如表2.1所示:表2.1Vue.js開發(fā)框架目錄結(jié)構(gòu)目錄名稱主要作用APP應(yīng)用的核心代碼,大部分業(yè)務(wù)將在該目錄下進行Views存放所有頁面代碼的文件目錄package.json用于存放依賴關(guān)系的文件config各種配置文件的目錄Api存放所有接口的文件目錄Layouts項目所有布局文件Styles目錄下包含所有SCSS樣式文件public為應(yīng)用程序的入口目錄,存儲項目用到的所有圖片或視頻資料Store用于存放所有數(shù)據(jù)庫文件validator驗證相關(guān)目錄components存放所有封裝的組件文件Main.js用于引入第三方庫、自定義插件HTML是建造網(wǎng)頁的基本元素,可以用于嵌入圖片與對象,創(chuàng)建交互式的表單,結(jié)合CSS樣式處理,能夠被瀏覽器讀取并展示。使用Vue.js框架技術(shù)之后就不需要和HTML直接交互,而是使用組件式的開發(fā)方式,使用一個VUE文件會將內(nèi)容掛載到一個DOM元素上,然后進行一些相關(guān)的事件處理或監(jiān)聽,所有值都是響應(yīng)式的,能夠使用一些指令在渲染的DOM上應(yīng)用響應(yīng)式行為。Vue.js和HTML有很多差別,具體比較如圖2.2所示:表2.2Vue.js開發(fā)框架和HTML結(jié)構(gòu)比較Vue.js框架技術(shù)HTML基本結(jié)構(gòu)文件類型不同.vue的格式結(jié)尾.html格式結(jié)尾代碼架構(gòu)不同template是一級節(jié)點,與script和style是并列的一級節(jié)點一個html大節(jié)點,里面有script和style節(jié)點外部引入文件的方式不同import引入js或css文件;utils文件引入;組件全局導(dǎo)入;組件單獨導(dǎo)入;html中通過script、linkhref引入js和css元素的操作不同采用MVVM模式,渲染性能較好需使用js操作DOM通過上面的比較,Vue.js的優(yōu)勢在于能夠適應(yīng)開發(fā)技術(shù)的進步,滿足開發(fā)需要,因此本系統(tǒng)使用Vue.js框架技術(shù)進行前端開發(fā)。一方面是Vue.js是我學(xué)習(xí)的主要專業(yè)技術(shù),在完成項目開發(fā)的同時,能夠不斷掌握其關(guān)鍵技術(shù),是對我學(xué)習(xí)深入程度的考驗和檢驗。另一方面是Vue.js是主流的前端框架技術(shù),能將其牢牢掌握,有助于我在工作中進行商業(yè)項目開發(fā),同時結(jié)合一些新的技術(shù),不斷充實知識儲備,積累開發(fā)經(jīng)驗。隨著信息技術(shù)不斷進步,編程技術(shù)在不斷更新迭代,必須不斷地練習(xí)和實踐,才能更快地學(xué)習(xí)新的技術(shù)和運用于實際生活中。在本系統(tǒng)中,主要需要實現(xiàn)的功能是登錄的路由判斷、對表格進行增刪改查、在線論壇的發(fā)布、點贊與收藏操作。使用Vue.js框架,結(jié)合VueRouter、Axios進行接口路徑的處理,實現(xiàn)角色的辨別與路由的切換。使用Slot插槽實現(xiàn)對表格數(shù)據(jù)的處理,便于參加活動、收藏互動等功能的實現(xiàn)。在界面中,使用Transition實現(xiàn)單元素或組件的過渡,使用Animation結(jié)合Animate.css為功能模塊添加進入、離開過渡動畫,增強用戶視覺體驗。2.2.2Node.jsNode.js是一個開源且跨平臺的JavaScript運行環(huán)境,它允許JavaScript代碼在瀏覽器之外運行,主要用于服務(wù)器端應(yīng)用程序的開發(fā)。Node.js使用了GoogleChrome的V8JavaScript引擎,因此執(zhí)行JavaScript的速度非???,性能出色。對于需要處理大量用戶請求的Web應(yīng)用,Node.js能夠提供良好的性能。它的輕量級線程模型意味著在處理高并發(fā)請求時,資源消耗較低,這對于用戶表單收集系統(tǒng)、后臺管理系統(tǒng)等場景特別有用。Node.js因其獨特的優(yōu)勢,在實時應(yīng)用、分布式系統(tǒng)、工具開發(fā)、高并發(fā)Web應(yīng)用以及多人在線游戲等領(lǐng)域都有廣泛的應(yīng)用。此外,它還支持微服務(wù)架構(gòu),有助于提升Web應(yīng)用的開發(fā)效率和可維護性。在當(dāng)今的互聯(lián)網(wǎng)公司里,越來越多的開發(fā)團隊選擇使用Node.js作為服務(wù)器平臺來開發(fā)軟件產(chǎn)品,使用Node.js開發(fā)的軟件產(chǎn)品也因為Node.js的優(yōu)勢而越來越廣泛。全球知名的職場社交平臺領(lǐng)英的移動平臺也從最開始的Ruby全部遷移到Node.js,并且因為使用了Node.js,服務(wù)器的數(shù)量也驟減,變?yōu)樵瓉淼氖种弧2⑶胰蚋鞔蟪雒幕ヂ?lián)網(wǎng)公司也有眾多產(chǎn)品已經(jīng)使用了Node.js作為服務(wù)器開發(fā)平臺,并且都取得了非常好的反饋。包括LinkedIn、Yahoo、Paypal、Walmart、Groupon等國外公司,雪球、淘寶、網(wǎng)易、百度等國內(nèi)公司,他們有很多項目都使用了Node.js環(huán)境。Node.js具有以下突出之處:使用JavaScript語法,保持了前后端開發(fā)語言的一致性;基于chrome瀏覽器的V8引擎運行,性能突出;采用時間驅(qū)動、異步編程模型,高并發(fā)、低消耗;支持unix,windows等不同的系統(tǒng)平臺,可以跨平臺使用。顯然,Node.js的這些優(yōu)勢使得其對于用戶數(shù)量大,并發(fā)高,IO密集的系統(tǒng)的開發(fā)是不二之選。2.2.3MySQL數(shù)據(jù)庫MySQL數(shù)據(jù)庫是一個廣泛使用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),它特別適合于進行各種數(shù)據(jù)分析任務(wù)。目前市面上,對數(shù)據(jù)進行處理使用最多且最便捷的就是MySQL,其具備開源、跨平臺使用的特性,是眾多軟件開發(fā)者的首要選擇。MySQL是一個關(guān)系型的數(shù)據(jù)庫管理系統(tǒng),將數(shù)據(jù)信息存放到不同的數(shù)據(jù)表中,可以提高數(shù)據(jù)庫的讀寫效率。使用者在進行數(shù)據(jù)庫設(shè)計時,必須遵循數(shù)據(jù)庫設(shè)計基本原則,對數(shù)據(jù)庫表之間的關(guān)系進行聯(lián)絡(luò)和梳理,方便開發(fā)者對數(shù)據(jù)進行訪問和處理。MySQL數(shù)據(jù)庫的系統(tǒng)特性如下:(1)操作數(shù)據(jù)時響應(yīng)速度快,只需使用sql語句就可進行查詢,操作簡單,能夠大大減少項目開支。(2)使用多種編譯器測試過的語言,其可移植性極高,保證不會受到約束和控制。(3)支持多線程的處理方式,能夠充分利用中央處理器的資源。(4)數(shù)據(jù)安全保障。在連接數(shù)據(jù)庫時,對用戶輸入的密碼進行了加密,將加密后的編碼存入數(shù)據(jù)庫中,能夠充分用戶的密碼安全。(5)支持各種開發(fā)使用,方便用戶操作數(shù)據(jù)。(6)MySQL的體積較小,這使得它在資源有限的環(huán)境下也能高效運行。(7)MySQL的性能穩(wěn)定,很少出現(xiàn)異常宕機,這對于需要長期穩(wěn)定運行的系統(tǒng)來說是至關(guān)重要的。2.3本章小結(jié)本章節(jié)主要對系統(tǒng)開發(fā)使用的開發(fā)工具進行了介紹,并對前后端開發(fā)使用到的框架技術(shù)進行了詳細的介紹。其中前端使用Vue.js3.0框架技術(shù),后端使用Node.js框架技術(shù),以及這些技術(shù)的實現(xiàn)原理和方法進行了詳細的介紹。3需求分析3.1功能性需求分析根據(jù)傳統(tǒng)的科普網(wǎng)站系統(tǒng)的特點,一個科普系統(tǒng)的主要功能應(yīng)該包括:網(wǎng)站注冊登錄、文章頁面展示、點贊以及文章評論、個人空間、后臺功能管理等。本系統(tǒng)結(jié)合實際應(yīng)用,根據(jù)這些典型的網(wǎng)站的功能將分為六大功能模塊:登錄注冊模塊、首頁模塊、個人空間模塊、用戶管理模塊、角色管理模塊以及文章與評論管理模塊,并對這六個關(guān)鍵的功能模塊展開詳細的需求分析和說明。3.1.1登錄注冊模塊登錄注冊模塊是用戶訪問應(yīng)用程序的入口,它不僅需要提供便捷、快速的訪問途徑,還要確保安全性和隱私保護。以下是對該模塊的一些功能需求分析:用戶在注冊時需要輸入有效的手機號,通常為11位數(shù)字,且需判斷是否以合法的運營商號碼段開頭。系統(tǒng)應(yīng)能檢測輸入是否超過規(guī)定長度,并在不符合要求時給出提示。為防止自動化工具注冊賬戶,可以引入圖形驗證碼,該驗證碼應(yīng)為動態(tài)生成的包含大小寫字母及數(shù)字的組合。用戶每刷新頁面或點擊刷新驗證碼時,都應(yīng)產(chǎn)生新的驗證碼。用戶輸入手機號后,應(yīng)能通過點擊獲取短信驗證碼,該過程包括發(fā)送60秒倒計時,以及設(shè)置驗證碼有效期(如10分鐘)。超過有效期需可重新請求發(fā)送。當(dāng)用戶輸入的手機號已被注冊時,系統(tǒng)應(yīng)提示用戶直接登錄而不是重新注冊。對于多次輸入為空或其他無效操作,應(yīng)有相應(yīng)的頻繁操作提示。除了傳統(tǒng)的用戶名和密碼登錄,還可以提供第三方登錄選項,例如微信登錄等,以便提高轉(zhuǎn)化率并減少跳出率。設(shè)計清晰友好的用戶界面,確保用戶能夠輕松地完成登錄和注冊流程。頁面間的交互要流暢,提示信息要明確易懂。綜上所述,登錄注冊模塊的設(shè)計需要綜合考慮用戶體驗、安全性、數(shù)據(jù)收集等多方面因素,以實現(xiàn)一個既方便又安全的訪問入口。3.1.2首頁模塊首頁模塊是網(wǎng)站或應(yīng)用程序中最重要的部分之一,它通常是用戶首次訪問時的入口點。因此,首頁模塊的需求分析需要考慮到用戶體驗、功能性和視覺效果等多方面因素。導(dǎo)航功能:首頁應(yīng)該提供清晰的導(dǎo)航功能,使用戶能夠輕松地找到他們想要的信息或服務(wù)。這包括主菜單、子菜單、搜索欄等。布局和設(shè)計:首頁的布局和設(shè)計應(yīng)該簡潔、易于理解,并且符合品牌形象。重要的信息和功能應(yīng)該突出顯示,以便用戶能夠快速找到它們。響應(yīng)式設(shè)計:首頁應(yīng)該適應(yīng)不同的設(shè)備和屏幕尺寸,以確保用戶在任何設(shè)備上都能夠獲得良好的體驗。內(nèi)容展示:首頁應(yīng)該展示有吸引力的內(nèi)容,包括文字、圖片、視頻等,以吸引用戶的注意力并提供有價值的信息。用戶交互:首頁應(yīng)該提供一些用戶交互的功能,例如登錄/注冊、聯(lián)系我們、訂閱新聞等,以便用戶能夠與網(wǎng)站或應(yīng)用程序進行互動。社交媒體集成:首頁可以集成社交媒體功能,例如分享按鈕、社交媒體鏈接等,以便用戶可以方便地分享內(nèi)容并與其他人互動。3.1.3個人空間模塊個人中心頁面是一個集合了用戶個人信息、功能入口以及相關(guān)設(shè)置的專屬區(qū)域,它是用戶與APP交互的重要部分。個人中心應(yīng)能夠清晰地展示用戶的個人信息,如頭像、昵稱、用戶名等,以便于用戶識別和確認(rèn)其個人空間。個人中心應(yīng)該提供清晰的功能入口,例如設(shè)置、我的點贊、收藏夾等,這些功能入口應(yīng)該是用戶經(jīng)常使用的操作,需要突出并易于訪問。個人中心的布局應(yīng)該合理,可以采用宮格、列表或?qū)m格+列表的形式來組織內(nèi)容,以提高用戶體驗和操作效率。個人中心的設(shè)計應(yīng)考慮用戶的操作習(xí)慣和邏輯,使得用戶能夠順暢地完成任務(wù),例如歷史記錄、修改設(shè)置等。隨著產(chǎn)品的業(yè)務(wù)發(fā)展,個人中心可能需要添加新的功能和服務(wù),因此在設(shè)計時應(yīng)考慮到未來的擴展性和適應(yīng)性。3.1.4用戶管理模塊用戶管理模塊是后臺管理系統(tǒng)中的關(guān)鍵部分,主要負(fù)責(zé)處理與用戶相關(guān)的各種操作和數(shù)據(jù)管理。用戶可以注冊賬號,完善個人信息,收藏感興趣的內(nèi)容,對文章進行點贊評論分享等,查看歷史瀏覽記錄,消息通知,提醒用戶關(guān)注的問題有新的回答或者活動有新的更新。3.1.5角色管理模塊角色管理模塊是后臺管理系統(tǒng)中的關(guān)鍵組件,用于定義和管理不同角色及其權(quán)限。允許管理員創(chuàng)建新的角色,并編輯現(xiàn)有角色的名稱、描述等基本信息。為每個角色分配具體的操作權(quán)限,這些權(quán)限決定了角色可以訪問和操作的功能模塊。允許管理員將用戶添加到角色中或從角色中移除,以實現(xiàn)對用戶權(quán)限的批量管理。提供強大的搜索功能,幫助管理員快速找到特定角色,并根據(jù)不同條件進行篩選和排序。3.1.6文章與評論管理模塊用戶可以創(chuàng)建、編輯、組織和發(fā)布文章內(nèi)容,提供富文本編輯器,支持文本格式化、圖片和視頻插入、超鏈接添加等功能,以便用戶輕松創(chuàng)建和編輯文章內(nèi)容。允許用戶為文章分配一個或多個分類和標(biāo)簽,以便于內(nèi)容的管理和檢索。支持定時發(fā)布、立即發(fā)布和草稿保存等功能,使用戶能夠靈活控制文章的發(fā)布時間和狀態(tài)。提供強大的搜索功能,幫助用戶快速找到特定文章,并根據(jù)不同條件進行篩選和排序。允許用戶對文章進行評論,并提供給管理員回復(fù)、刪除或置頂評論的功能。3.2角色需求分析3.2.1管理員需求管理員主要是針對系統(tǒng)的所有用戶,所有發(fā)布的文章和活動進行管理的人員。他們的賬號不需要通過注冊,而是通過系統(tǒng)所有者根據(jù)需要直接操作后臺的數(shù)據(jù)庫而設(shè)置的。管理員的身份一般是對系統(tǒng)的管理,不需要發(fā)布文章,修改自身資料已經(jīng)留言和評論的功能,只需要對系統(tǒng)所有用戶以及他們所發(fā)布的所有文章進行管理,主要對用戶發(fā)布的文章內(nèi)容進行審核,防止文章包含涉黃涉暴等違法內(nèi)容。主要操作功能就是刪除用戶賬號和刪除違規(guī)文章。同時,管理員也可以作為普通用戶進行瀏覽網(wǎng)站信息等。3.2.2普通用戶需求系統(tǒng)的用戶管理模塊主要是針對用戶類型,用戶類型有游客、普通用戶。游客是在該網(wǎng)站上沒有注冊登錄的用戶,他們可以隨意瀏覽網(wǎng)站上的文章和活動,無須登錄即可瀏覽文章內(nèi)容和搜索文章。而普通用戶是已經(jīng)注冊登錄的用戶,他們可以修改個人信息,發(fā)布文章,點贊評論,管理評論留言,也可以參加網(wǎng)站上的活動以及退出網(wǎng)站。3.3非功能性需求分析3.3.1安全性在系統(tǒng)的實際運行過程中,不僅要滿足功能和性能方面的需求,系統(tǒng)的安全性需求也是前端開發(fā)人員在開發(fā)時必須考慮的問題。系統(tǒng)應(yīng)實現(xiàn)一個健壯的用戶認(rèn)證機制。這通常涉及用戶名和密碼的驗證,可能還包括多因素認(rèn)證,以確保只有授權(quán)用戶才能訪問系統(tǒng)。基于用戶角色的訪問控制(RBAC)是保護系統(tǒng)安全的常用方法。它要求為每個用戶分配角色,并為每個角色定義一組權(quán)限,從而限制用戶對系統(tǒng)資源的訪問。通過轉(zhuǎn)義前端和后臺的字段,可以有效防止跨站腳本攻擊(XSS)。XSS攻擊是指攻擊者將惡意腳本注入到其他人瀏覽的網(wǎng)頁中,這些腳本隨后在用戶的瀏覽器內(nèi)執(zhí)行,可能導(dǎo)致信息泄露或其他形式的攻擊。對于涉及功能安全的系統(tǒng),還需要明確其對應(yīng)的安全完整性等級(SIL或ASIL),并按照輸入、處理、輸出的格式來編寫每一條需求描述。3.3.2易用性本文設(shè)計和實現(xiàn)的網(wǎng)站具有直觀、清晰和一致的設(shè)計,使新用戶能夠快速理解如何使用。包括明確的導(dǎo)航菜單,清晰的按鈕和鏈接,以及一致的顏色和字體等。而且網(wǎng)站還提供一個強大的搜索引擎,使用戶能夠快速找到他們需要的信息。搜索結(jié)果應(yīng)該相關(guān)且準(zhǔn)確,并且可以按照相關(guān)性或其他標(biāo)準(zhǔn)進行排序。網(wǎng)站不僅優(yōu)化其加載速度,以減少用戶等待時間。這可能涉及到優(yōu)化圖片和其他媒體文件,減少HTTP請求,以及使用緩存等技術(shù),網(wǎng)站還提供一個用戶反饋系統(tǒng),讓用戶可以輕松地提供他們的建議和問題。這可以通過在線表單,電子郵件,或者實時聊天等方式實現(xiàn)。3.3.3性能需求為了解決前端開發(fā)中低配置計算機在頁面渲染上的性能問題,本文設(shè)計以下功能來優(yōu)化性能和提升用戶體驗。使用內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)來加速靜態(tài)資源的加載,提高全球用戶的訪問速度,實現(xiàn)有效的緩存策略,減少數(shù)據(jù)庫查詢次數(shù),加快頁面加載速度。對前端和后端代碼進行優(yōu)化,減少不必要的計算和內(nèi)存使用,提高效率。采用合適的圖片格式,并對其進行壓縮,使用圖片懶加載技術(shù),確??焖偌虞d顯示關(guān)鍵圖片。使用虛擬DOM技術(shù)(如React或Vue)來減少DOM操作的開銷,提高頁面渲染效率。合理設(shè)置HTTP緩存策略,利用瀏覽器緩存機制減少重復(fù)資源的加載。本用例是用戶登錄系統(tǒng)之后,查看日程信息之后,進行的查看、參加或收藏日程信息的操作。3.4本章小結(jié)本系統(tǒng)的主要角色是用戶和管理員,用戶主要是游客和普通用戶,其能夠操作的主要功能有:注冊登錄網(wǎng)站、瀏覽文章內(nèi)容、查看參加或收藏感興趣的文章或者活動、查看收藏、查看點贊或收藏在線論壇信息、發(fā)布論壇文章、管理發(fā)布的文章、點贊及留言、查看個人信息等的功能;管理員主要功能有:用戶信息管理、在線論壇管理、主頁管理等。4系統(tǒng)設(shè)計4.1系統(tǒng)總體設(shè)計4.1.1功能結(jié)構(gòu)設(shè)計通過需求分析和用例描述總結(jié)出本系統(tǒng)的主要功能總體結(jié)構(gòu)圖。主要有五個大板塊,分別是首頁、分類列表、活動專區(qū)、在線論壇、個人中心。具體信息如圖4.1所示:圖4.1功能結(jié)構(gòu)圖大學(xué)生活科普網(wǎng)站主要包含了5個主要功能:首頁、分類列表管理、活動專區(qū)管理、在線論壇管理、個人中心管理;分類列表中包括有熱門競賽、技能考試、就業(yè)指南,用戶可以在其中瀏覽自己感興趣的內(nèi)容;關(guān)于在線論壇中用戶可以對文章進行點評操作,也可在我的論壇頁面自行發(fā)布文章以及查看用戶的喜歡和收藏信息;在個人中心中主要有:個人信息,用戶的瀏覽文章記錄、對文章進行搜索等功能。4.1.2框架結(jié)構(gòu)設(shè)計本系統(tǒng)主要使用Vue.js前端框架結(jié)構(gòu),使用MVVM設(shè)計模式實現(xiàn)自底向上的開發(fā)過程。來開發(fā)一款便捷高效、功能齊全的大學(xué)生活科普網(wǎng)站。MVVM設(shè)計模式具體原理信息如圖4.2所示:圖4.2MVVM結(jié)構(gòu)圖MVVM設(shè)計模式具有很多優(yōu)點:耦合程度低。視圖能夠不受模型的修改與改變的作用而單獨存在,一個視圖模型可以和不同的視圖進行關(guān)聯(lián),當(dāng)視圖或者模型被修改而發(fā)生變化的時候?qū)?yīng)的模型或者視圖則可以不受任何影響。可重復(fù)使用。將一些視圖組件的邏輯放在同一個視圖模型里,然后可以讓很多不同的View使用該視圖邏輯,從而該視圖邏輯可以被重復(fù)使用??蓡为氶_發(fā)。不同的開發(fā)人員可以專注于不同的開發(fā)方向,比如對軟件系統(tǒng)的業(yè)務(wù)邏輯以及系統(tǒng)數(shù)據(jù)的開發(fā),而頁面設(shè)計師可以只用注重于頁面的設(shè)計??蓽y試??梢酝ㄟ^針對視圖模型編造測試用例并對界面進行測試。后端采用MVC模式,MVC的分解成不同的層這種開發(fā)模式同時也簡化了開發(fā)人員不同小組的開發(fā),不一樣的開發(fā)工作可以由不同技術(shù)方向的開發(fā)人員進行開發(fā),主要包括對視圖、控制器和業(yè)務(wù)邏輯等方面的開發(fā)工作。MVC模式和MVVM模式有下面的不同之處。運用Node.js框架對大學(xué)生活科普網(wǎng)站系統(tǒng)進行開發(fā),旨在構(gòu)建一個簡單、高效、實用的后端框架,用于承載數(shù)據(jù)和進行數(shù)據(jù)處理,為前端提供接口,完成數(shù)據(jù)的動態(tài)處理。MVC架構(gòu)圖如圖4.3所示。圖4.3MVC架構(gòu)圖4.2功能模塊設(shè)計4.2.1登錄登錄時用戶輸入賬號和密碼信息之后,點擊登錄按鈕時,前端將用戶信息傳遞給后端,后端通過比對數(shù)據(jù)庫的數(shù)據(jù),返回不同的權(quán)限信息。并通過權(quán)限去匹配路由信息。對前端的目錄進行動態(tài)添加路由信息,頁面跳轉(zhuǎn)到該權(quán)限下的用戶頁面,實現(xiàn)用戶管理員的自動識別和跳轉(zhuǎn),達到登錄的功能實現(xiàn)。具體登錄時序圖如圖4.4所示:圖4.4登錄時序圖4.2.2參加或取消參加活動參加活動是本系統(tǒng)的主要功能之一,用戶登錄系統(tǒng)之后,可以查看大學(xué)生科普網(wǎng)站里面的各種活動,查看自己感興趣的活動并點擊參加,點擊參加之后,按鈕自動變成撤銷的功能,活動信息會自動保存到用戶的個人中心,用戶可以方便查看或者設(shè)置活動提醒時間,實時提醒用戶去參加活動。參加活動時序圖如圖4.5所示。同時用戶可以選擇取消參加活動,在活動申請時間結(jié)束之前點擊撤銷即可。此時,用戶個人中心也會自動刪除活動信息,方便用戶使用。取消活動時序圖如圖4.6所示。圖4.5參加活動時序圖圖4.6撤銷活動時序圖4.2.3點贊、收藏文章或取消點贊、收藏用戶登錄系統(tǒng)之后,可以查看在線論壇的所有論壇信息,在瀏覽論壇時,進行點贊收藏評論等操作,狀態(tài)會改變,同時系統(tǒng)自動將用戶點贊、收藏或評論的文章存到用戶的論壇中,方便用戶查看。點贊、收藏和評論文章時序圖如圖4.7所示:圖4.7點贊、收藏或評論文章時序圖用戶也可以取消點贊或者取消收藏文章,進行操作之后,點贊或收藏的數(shù)量會減少,回到初始的狀態(tài),用戶的個人論壇中也會自動刪除取消操作之后的文章。取消點贊、收藏時序圖如圖4.8所示:圖4.8取消點贊、收藏或評論文章時序圖4.2.4發(fā)布論壇文章信息用戶登錄網(wǎng)站之后,在我的論壇板塊可以發(fā)布論壇文章,點擊發(fā)布按鈕之后,文章會進入到最新板塊,同時個人論壇中也會顯示用戶發(fā)布的文章信息。發(fā)布論壇文章時序圖如圖4.9所示:圖4.9發(fā)布論壇文章時序圖4.2.6管理員管理員輸入賬號密碼之后,后端接收到前端傳遞的接口,拿取管理員輸入的賬號密碼信息,并通過sql語句自動匹配數(shù)據(jù)庫數(shù)據(jù),返回角色權(quán)限信息,對路由進行動態(tài)添加,得到菜單信息,跳轉(zhuǎn)到管理員用戶界面。管理員主要進行登錄管理、用戶信息管理、論壇信息管理和主頁管理,對所有數(shù)據(jù)進行相關(guān)的操作。管理員時序圖如圖4.11所示:圖4.11管理員時序圖4.3數(shù)據(jù)庫設(shè)計4.3.1數(shù)據(jù)庫設(shè)計方法數(shù)據(jù)庫的設(shè)計是每一個系統(tǒng)開發(fā)的根基,根據(jù)系統(tǒng)的業(yè)務(wù)信息求、處理需求,設(shè)計出數(shù)據(jù)模式以及應(yīng)用程序,能夠有效地對數(shù)據(jù)信息進行存儲,方便用戶通過sql語句對數(shù)據(jù)庫數(shù)據(jù)進行相關(guān)的操作。數(shù)據(jù)庫設(shè)計通常有以下幾種方法:直觀設(shè)計法、規(guī)范設(shè)計法、計算機輔助設(shè)計法、自動化設(shè)計法。這些方法都能夠幫助用戶進行數(shù)據(jù)庫的設(shè)計,對數(shù)據(jù)進行處理,也是近幾年來常用的一些數(shù)據(jù)庫設(shè)計思路的體現(xiàn)。4.3.2實體關(guān)系分析實體-聯(lián)系圖,是用于顯示實體之前關(guān)系的圖,通常包括三個屬性,分別是類型、屬性、聯(lián)系。通過對實體之間的關(guān)系進行探究,對我們的功能開發(fā)邏輯的實現(xiàn)有很大的幫助。根據(jù)對數(shù)據(jù)庫表的設(shè)計與分析,可以繪制出如下E-R圖:用戶的基本信息,實體的屬性主要有昵稱、電話號碼、頭像、電子郵箱、性別、個人簡介、出生日期等,用戶信息實體圖如圖4.12所示:圖4.12用戶信息實體圖活動信息模塊主要是裝載了所有的活動信息,包括活動名稱、活動屬性、發(fā)起者名字、發(fā)起人單位、發(fā)起者編號、開始申請時間、結(jié)束申請時間、開始時間、結(jié)束時間等,素質(zhì)活動信息實體圖如圖4.13所示:圖4.13活動信息實體圖在線論壇模塊主要包括論壇文章信息和我的點贊、收藏和評論信息。論壇文章實體圖如圖4.14所示。圖4.14論壇文章實體圖在線日程管理系統(tǒng)總E-R關(guān)系圖如圖4.21所示:圖4.21大學(xué)生科普網(wǎng)站實體圖4.4系統(tǒng)界面設(shè)計界面的美觀度是用戶/對產(chǎn)品產(chǎn)生第一印象的依據(jù)之一。本系統(tǒng)的界面設(shè)計是在調(diào)研多個同類型系統(tǒng)之后,形成了現(xiàn)在的界面框架與樣式,整個系統(tǒng)界面采用ViewDesign組件庫設(shè)計,線條使用較為明顯的粗線條搭配白色背景,增強視覺效應(yīng),能較好地引起用戶的關(guān)注,增強用戶的體驗感。本網(wǎng)站/分為上下兩個板塊,最上面是本系統(tǒng)的主標(biāo)題,采用藍色背景作為顯眼標(biāo)識,菜單并排顯示,點擊菜單選項后會出現(xiàn)標(biāo)識。下半部分基本采用粗線條用于板塊區(qū)分,顯得整個頁面干凈整潔,突出用戶瀏覽的數(shù)據(jù)信息。用戶在進行功能操作時,界面中會彈出提示,與用戶完成交互,讓用戶了解操作進展,增強體驗感。系統(tǒng)界面流程圖顯示了整個系統(tǒng)的所有交互跳轉(zhuǎn),能夠快速定位每一個功能的關(guān)鍵作用。4.5本章小結(jié)本章節(jié)通過對系統(tǒng)的功能結(jié)構(gòu)和框架結(jié)構(gòu)進行繪制和分析,總結(jié)出了系統(tǒng)的總體設(shè)計,并對所有的功能模塊進行分析,繪制時序圖。其次進行數(shù)據(jù)庫設(shè)計,分別使用用例圖和實體關(guān)系圖對實體和數(shù)據(jù)庫關(guān)系進行了介紹,使用表格展示了所用到的所有數(shù)據(jù)庫表信息。最后確定了本系統(tǒng)的主要頁面設(shè)計,完成系統(tǒng)的主要配色和版塊設(shè)計。通過對所有需求的分析,最終完成了設(shè)計。5系統(tǒng)實現(xiàn)5.1系統(tǒng)實現(xiàn)環(huán)境硬件環(huán)境:12thGenIntel(R)Core(TM)i5-124002.50GHz16G運行500G內(nèi)存軟件環(huán)境:Windows11開發(fā)環(huán)境:VisualStudio2019、HBuilderX運行環(huán)境:GoogleChrome瀏覽器5.2首頁界面描述主頁是用戶登錄之久跳轉(zhuǎn)的第一個頁面,主要有熱門話題、最新資訊、活動推薦等板塊,主要是展示一些比較熱門的信息,讓用戶快速了解網(wǎng)站主要功能和需求,點擊可以跳轉(zhuǎn)到相應(yīng)的頁面。關(guān)鍵技術(shù)和代碼本模塊是用戶登錄之后跳轉(zhuǎn)的頁面,主要根據(jù)登錄的用戶權(quán)限進行不同主頁的展示,當(dāng)用戶點擊登錄之后,傳遞給后端一個Uid參數(shù),通過這個參數(shù)對數(shù)據(jù)庫進行篩選之后,拿到菜單的原始數(shù)據(jù)。使用handleFetchMenu的方法,對菜單進行拼接,拼接后返給前端顯示。asyncfunctionhandleFetchMenu(uid){constuserInfo=awaitcache.get(`USER:INFO:ID:${uid}`)if(userInfo){if(userInfo.role_id!==0||menuList.role_id===1){response.msg='用戶端菜單獲取成功!'letparentData=[]for(constitemofmenuList){if(item.p_id===0){parentData.push({meta:{title:item.title},children:[]})}}response.data=parentData}}5.3分類列表(1)界面描述按照不同的主題(如熱門比賽、技能考試、就業(yè)指南等)、時間、來源進行分類篩選和排序,方便用戶快速找到感興趣的內(nèi)容。熱門比賽是關(guān)于學(xué)術(shù)競賽方面的,比如數(shù)學(xué)奧林匹克、物理競賽、編程比賽等;技能考試有語言考試:英語四六級、日語能力測試等,計算機考試:計算機二級、網(wǎng)絡(luò)工程師、軟件測試師等,職業(yè)資格考試:會計師、律師、醫(yī)生等;就業(yè)指南是有關(guān)行業(yè)分類:互聯(lián)網(wǎng)、金融、制造業(yè)等,職位分類:產(chǎn)品經(jīng)理、運營、開發(fā)工程師等,公司分類:大型互聯(lián)網(wǎng)公司、創(chuàng)業(yè)公司、國有企業(yè)等;對于時間的篩選有最近一周、最近一個月和最近三個月;最后是關(guān)于來源篩選有官方渠道:政府網(wǎng)站、教育部門、行業(yè)協(xié)會等,新聞媒體:新華網(wǎng)、人民網(wǎng)、騰訊新聞等,社交媒體:微博、微信公眾號、知乎等,個人博客和論壇:CSDN、知乎專欄、天涯論壇等。(2)關(guān)鍵技術(shù)和代碼本模塊主要是分類列表,用戶進行按鈕操作,當(dāng)用戶點擊按鈕之后,proxy.$Modal.confirm彈出模態(tài)框,提示用戶相關(guān)操作用戶點擊之后,使用postScheduleInfo將參數(shù)傳遞給后端改變狀態(tài),同時使用proxy.$M對用戶進行提示。constmodalEvent=(state,row)=>{if(state===1){proxy.$Modal.confirm({title:'溫馨提示',content:'確定參加這個活動嗎?',onOk:async()=>{awaitpostScheduleInfo({id:row.id,status:1}).then(()=>{})proxy.$M('參加成功,請到個人中心查看詳細信息')},onCancel:()=>{proxy.$M('取消操作')}})}5.4論壇中心界面描述在論壇中心,用戶可以了解相關(guān)模塊的最新動態(tài)、市場趨勢和熱門活動,并與其他用戶交流經(jīng)驗、分享學(xué)習(xí)心得,用戶還可以點贊評論收藏,形成更加緊密的社群關(guān)系。論壇中心還包含推薦文章、最新發(fā)布文章以及我的論壇。推薦里面的文章是用戶點擊率比較高的文章,最新發(fā)布的文章是按時間順序排列的文章,我的論壇中,用戶可以發(fā)布論壇文章,也可以查看用戶喜歡和收藏的文章。關(guān)鍵技術(shù)和代碼本模塊主要是進行論壇的操作,其中點贊和收藏之后狀態(tài)和樣式的改變是重點。當(dāng)用戶點贊或者收藏之后,使用selectCollect方法對狀態(tài)進行判斷,當(dāng)value.isCollect=0時是其原有的狀態(tài),等于1時是新狀態(tài)。使用postCollectInfos接口向后端傳遞變化的參數(shù)信息,返回新狀態(tài)。constselectCollect=async(value,index)=>{constcollectData=ref(0)console.log(value.isCollect)if(value.isCollect===0){collectData.value=formTemplate.data[index].collectData+=1isCollect.value=formTemplate.data[index].isCollect=1}elseif(value.isCollect===1){collectData.value=formTemplate.data[index].collectData-=1isCollect.value=formTemplate.data[index].isCollect=0}awaitpostCollectInfos({id:value.id,collectData:collectData.value,isCollect:isCollect.value}).then(()=>{postCollectData({id:value.id,isCollect:isCollect.value})})}5.5活動專區(qū)界面描述發(fā)布各類線上線下活動信息,如講座、展覽、競賽等,鼓勵用戶參與,不僅如此,網(wǎng)站上部分活動還推出用戶線上抽獎,抽中的用戶,網(wǎng)站會以郵件的方式自動發(fā)送給用戶讓其填寫收貨地址和聯(lián)系方式后續(xù)方便用戶領(lǐng)取獎品。關(guān)鍵技術(shù)和代碼本模塊主要通過圖展示數(shù)據(jù)信息,使用getQualityScore()、getActivityData()、getAllActivitiesInfo()幾個接口從后端拿取數(shù)據(jù),并展示到頁面,在這里封裝了一個iPrint函數(shù),用于打印數(shù)據(jù)到控制臺。constgetInit=async()=>{getQualityScore().then((res)=>{echartsTemplate.qualityScore=res.data})getAllActivitiesInfo({input:'',activer:'',type:'',key:'',order:'',page:1,size:30}).then((res)=>{tableTemplate.data=res.data.rowsiPrint.log('echartsTemplate.qualityScore',tableTemplate.data)})}5.6個人中心界面描述用戶可以注冊賬號,完善個人信息,收藏感興趣的內(nèi)容,查看歷史瀏覽記錄,消息通知,提醒用戶關(guān)注的問題有新的回答或者活動有新的更新。關(guān)鍵技術(shù)和代碼本模塊主要是戰(zhàn)術(shù)用戶的個人信息以及參與活動的數(shù)據(jù)信息。使用AsyncAwait異步函數(shù)對數(shù)據(jù)接口進行處理,其中接口是getMyScheduleInfo(),通過for循環(huán),給數(shù)據(jù)添加序號信息,方便展示數(shù)據(jù)。并使用onMounted()函數(shù),對表格的高度進行規(guī)定,使得表格的高度能夠自適應(yīng)屏幕,達到最好的效果。constMyScheduleInfo=async(param)=>{getMyScheduleInfo(param).then((res)=>{tableTemplate.table.data=res.data.rowstableTemplate.table.total=res.data.totalfor(leti=0;i<tableTemplate.table.data.length;i++){Object.assign(tableTemplate.table.data[i],{no:i+1})}onMounted(()=>{constsetTableHeight=()=>{tableTemplate.table.height=window.innerHeight-300iPrint.log('tableTemplate.table.height',tableTemplate.table.height)}setTableHeight()window.onresize=()=>{setTableHeight()}})5.7本章小結(jié)本章主要介紹了大學(xué)生活科普網(wǎng)站系統(tǒng)環(huán)境和系統(tǒng)主要功能的具體實現(xiàn)過程和關(guān)鍵代碼展示。其中重點介紹了本網(wǎng)站上關(guān)于首頁、分類列表、論壇中心、活動專區(qū)以及個人中心五個模塊的實現(xiàn)。系統(tǒng)實現(xiàn)環(huán)境中主要介紹了運行所需要的軟件、硬件開發(fā)和運行環(huán)境。對整個網(wǎng)站的代碼質(zhì)量、功能實現(xiàn)等方面不斷優(yōu)化測試,不斷優(yōu)化和改善代碼質(zhì)量,不斷提升系統(tǒng)的健壯性和穩(wěn)定性以及對不同瀏覽器的兼容性,最終使得本網(wǎng)站完成了需求和設(shè)計目標(biāo)。6系統(tǒng)測試6.1系統(tǒng)測試環(huán)境6.1.1軟件環(huán)境(1)操作環(huán)境:windows7系統(tǒng)以上(2)測試工具:ApiPost6(3)其他軟件:office20196.1.2硬件環(huán)境(1)12thGenIntel(R)Core(TM)i5-124002.50GHz16G運行(2)騰訊云服務(wù)器(3)網(wǎng)絡(luò):500兆網(wǎng)速6.2軟件測試目的本系統(tǒng)的測試目的主要是驗證系統(tǒng)在運行過程中可能存在的一些問題,方便后續(xù)的修護和優(yōu)化工作開展,為在線日程管理系統(tǒng)的測試工作提供一個基礎(chǔ)框架。提高軟件質(zhì)量:通過對軟件系統(tǒng)進行一系列的測試活動,可以顯著提升軟件的整體品質(zhì);滿足用戶需求:確認(rèn)軟件是否滿足用戶的需求和預(yù)期,保證功能的實現(xiàn)與業(yè)務(wù)目標(biāo)的一致性;降低風(fēng)險:識別潛在的問題點,減少未來可能出現(xiàn)的風(fēng)險,如數(shù)據(jù)丟失、系統(tǒng)崩潰等;提高開發(fā)效率:通過早期發(fā)現(xiàn)問題,減少在開發(fā)周期后期修復(fù)錯誤的成本和時間開銷;保護數(shù)據(jù)安全:確保軟件在數(shù)據(jù)處理和存儲方面的安全性,防止數(shù)據(jù)泄露或損壞;遵守法規(guī)標(biāo)準(zhǔn):驗證軟件是否符合相關(guān)行業(yè)規(guī)范和標(biāo)準(zhǔn)要求,避免因違規(guī)帶來的法律責(zé)任;提升用戶體驗:優(yōu)化用戶界面和交互流程,提供更好的用戶體驗和滿意度;評估軟件屬性:對軟件的性能、安全性、易用性等方面進行全面評價;文檔化測試結(jié)果:形成詳細的測試報告,為后續(xù)的開發(fā)和維護工作提供參考和依據(jù)。軟件測試是軟件開發(fā)過程中一個關(guān)鍵環(huán)節(jié),它不僅有助于提升產(chǎn)品的穩(wěn)定性和用戶滿意度,還對整個項目的成敗起到?jīng)Q定性作用。通過有效的測試策略和方法,能夠確保交付給用戶的軟件產(chǎn)品是可靠、安全并且符合需求的。6.3測試用例一個良好設(shè)計的測試用例可以確保軟件在各種條件和環(huán)境下按照預(yù)期工作,并且能夠揭露潛在的缺陷和問題。閱讀和分析產(chǎn)品需求文檔,確保完全理解了需要測試的功能以及用戶交互流程,明確測試用例的目的,識別出需要驗證的功能點、性能指標(biāo)或安全要求,基于軟件的使用情境,構(gòu)建可能的用戶操作序列,包括正常流程和異常流程。為每個測試場景選擇合適的輸入數(shù)據(jù),包括正常值、邊界值、錯誤值等,詳細描述執(zhí)行測試所需要的每一步操作,保證其他人能夠根據(jù)這些步驟復(fù)現(xiàn)測試,清楚地說明每個測試步驟期望得到的輸出或系統(tǒng)行為。自我檢查測試用例的完整性和邏輯性,確保它們能夠有效地發(fā)現(xiàn)潛在問題,邀請同事對測試用例進行評審,以提高用例質(zhì)量和覆蓋率。根據(jù)評審反饋修改和完善測試用例,將完成的測試用例納入版本控制系統(tǒng),保持其追蹤性和可管理性。本系統(tǒng)的部分測試用例如下列表格所示。表6.1用戶登錄測試用例測試ID輸入情況輸出情況預(yù)期結(jié)果實際結(jié)果0001信息完整登錄成功進入主頁進入主頁0002信息輸入有誤無法登錄登錄失敗登錄失敗0003未點擊登錄按鈕無法登錄登錄失敗登錄失敗0004未輸入登錄信息無法登錄登錄失敗登錄失敗表6.2用戶查詢活動測試用例測試ID輸入情況輸出情況預(yù)期結(jié)果實際結(jié)果0001信息完整查詢成功顯示相應(yīng)數(shù)據(jù)顯示相應(yīng)數(shù)據(jù)0002輸入活動名稱有誤查詢成功不顯示數(shù)據(jù)不顯示數(shù)據(jù)0003只輸入活動名稱查詢成功顯示相應(yīng)數(shù)據(jù)顯示相應(yīng)數(shù)據(jù)0004只選擇發(fā)起單位信息查詢成功顯示相應(yīng)數(shù)據(jù)顯示相應(yīng)數(shù)據(jù)0005只選擇活動類別查詢成功顯示相應(yīng)數(shù)據(jù)顯示相應(yīng)數(shù)據(jù)0006未點擊查詢結(jié)果按鈕查詢失敗不顯示數(shù)據(jù)不顯示數(shù)據(jù)0007查詢之后未點擊重置查詢按鈕查詢失敗不顯示數(shù)據(jù)不顯示數(shù)據(jù)表6.3參加活動測試用例測試ID輸入情況輸出情況預(yù)期結(jié)果實際結(jié)果0001信息完整參加成功按鈕變成撤銷按鈕變成撤銷0002未點擊確定按鈕參加失敗按鈕不變按鈕不變0003點擊取消按鈕參加失敗按鈕不變按鈕不變0004點擊撤銷按鈕參加失敗按鈕變成參加按鈕變成參加表6.4點贊測試用例測試ID輸入情況輸出情況預(yù)期結(jié)果實際結(jié)果0001信息完整圖標(biāo)變成紅色點贊成功點贊成功0002點贊后再次點擊圖標(biāo)變成原狀態(tài)點贊失敗點贊失敗表6.5發(fā)布文章測試用例測試ID輸入情況輸出情況預(yù)期結(jié)果實際結(jié)果0001信息完整發(fā)布文章成功我的論壇顯示發(fā)布的文章我的論壇顯示發(fā)布的文章0002只輸入標(biāo)題發(fā)布文章失敗發(fā)布失敗發(fā)布失敗0003只輸入內(nèi)容發(fā)布文章失敗發(fā)布失敗發(fā)布失敗0004點擊取消按鈕發(fā)布文章失敗發(fā)布失敗發(fā)布失敗0005未點擊確定按鈕發(fā)布文章失敗發(fā)布失敗發(fā)布失敗6.4測試結(jié)果分析測試結(jié)果分析是軟件測試過程中的一個重要環(huán)節(jié),它涉及對測試執(zhí)行過程中收集的數(shù)據(jù)和信息進行詳細審查,以確定軟件產(chǎn)品質(zhì)量并發(fā)現(xiàn)潛在問題。通過對本系統(tǒng)進行多次的測試之后,總結(jié)的測試結(jié)果如下:第一次測試結(jié)束時,測試用例的預(yù)期結(jié)果與實際結(jié)果的匹配率是55%,主要問題是點擊發(fā)布文章時,系統(tǒng)的響應(yīng)時間過長,無法在相應(yīng)的時間內(nèi)顯示用戶發(fā)布的文章信息,進行修改之后,修復(fù)了此問題。其次是在切換管理員登錄時,跳轉(zhuǎn)的路徑會出現(xiàn)問題,發(fā)現(xiàn)是由于路由的顯示有問題。第二次測試結(jié)束時,通過對第一次測試出現(xiàn)的問題進行修復(fù)之后,再進行測試,發(fā)現(xiàn)第一次測試出現(xiàn)的問題已經(jīng)得到解決,此次測試用例的預(yù)期結(jié)果與實際結(jié)果的匹配率是95%,發(fā)現(xiàn)存在的問題是用戶姓名重復(fù)之后,后臺對數(shù)據(jù)的處理容易出現(xiàn)問題,需要進行進一步的修復(fù)。第三次測試結(jié)束后,對第二次測試出現(xiàn)的問題進行了修復(fù),再進行測試,此次測試用例通過率99%。通過多次的測試,修復(fù)和完善了系統(tǒng)出現(xiàn)的問題,證明了本系統(tǒng)能夠穩(wěn)定的運行,系統(tǒng)功能能夠正常使用。第四次測試結(jié)束后,本次測試過程中沒有出現(xiàn)問題,預(yù)期結(jié)果與實際結(jié)果基本一致,能夠證明本系統(tǒng)已經(jīng)逐漸成熟,能夠投入使用。6.5本章小結(jié)本章節(jié)主要闡述了系統(tǒng)測試的軟件和硬件環(huán)境,并對測試目的和測試計劃進行了規(guī)劃,完成測試計劃得出測試用例。經(jīng)過多次的軟件測試之后,本系統(tǒng)的功能得到了完善。軟件測試是對開發(fā)的檢驗,也是對用戶的負(fù)責(zé)任,通過一次又一次的檢測,不斷完善系統(tǒng)功能,達到用戶期待的使用效果。7總結(jié)與展望7.1總結(jié)本文主要闡述了一個基于Vue的大學(xué)生活科普網(wǎng)站交互設(shè)計與實現(xiàn)過程。系統(tǒng)完全由Web前端的相關(guān)技術(shù)進行實現(xiàn)。前端部分使用了組件化思想的框架Vue.js,服務(wù)器部分使用了優(yōu)勢突出的Node.js環(huán)境開發(fā)。本系統(tǒng)前后端完全解耦,業(yè)務(wù)邏輯按照模塊化的方式,Web頁面基于組件化,并嚴(yán)格按照MVVM軟件設(shè)計模式進行設(shè)計與實現(xiàn)。本文首先介紹了系統(tǒng)研究的背景情況和研究目的及意義,并對國內(nèi)外的研究現(xiàn)狀進行了簡要描述和對比分析。接著對系統(tǒng)中使用的重要的技術(shù)進行了簡要的分析與介紹,包括Vue.js框架、Node.js、面向文檔的分布式數(shù)據(jù)庫MySQL,MVVM設(shè)計模式、Web前端組件化以及Web前端工程化。隨后本文對系統(tǒng)進行了系統(tǒng)需求分析。并根據(jù)分析對系統(tǒng)的總體架構(gòu)進行了設(shè)計,并將整個系統(tǒng)劃分為登錄注冊模塊、首頁模塊、個人空間模塊、用戶管理模塊、角色管理模塊和文章與評論管理模塊共六個模塊,同時也進行了一些非功能性需求分析,接著介紹了系統(tǒng)的實現(xiàn)和測試過程。在系統(tǒng)的實現(xiàn)部
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026屆新疆伊犁州奎屯一中 化學(xué)高二上期中考試試題含解析
- 家電公司合同管理辦法
- 家電公司戰(zhàn)略風(fēng)險管理細則
- 湖南省瀏陽一中、醴陵一中2026屆化學(xué)高一上期末達標(biāo)檢測模擬試題含解析
- 22.2.1直接開平方法和因式分解法(教學(xué)課件)數(shù)學(xué)華東師大版九年級上冊
- 基礎(chǔ)卷-2023年小升初數(shù)學(xué)模擬卷二(蘇教版)答案解析
- 2022年河南省開封市高中高三下學(xué)期5月三模英語試題
- 保安手冊掌握要點課件
- 機關(guān)薪酬方案(3篇)
- 浙江寧波市2026屆高三化學(xué)第一學(xué)期期末復(fù)習(xí)檢測試題含解析
- 財產(chǎn)行為稅法培訓(xùn)課件
- 2025年新版期權(quán)知識考試題庫帶答案
- 無錫市公安局梁溪分局招聘警務(wù)輔助人員57人筆試模擬試題參考答案詳解
- 儀器對標(biāo)管理辦法
- 2025年山東省輔警招聘考試考試試題庫含答案詳解
- 2025年航空職業(yè)技能鑒定考試-候機樓服務(wù)技能考試歷年參考題庫含答案解析(5卷100道集合-單選題)
- 消防員面試問題及答案解析
- 工勤人員技師等級考核(公共課程)題庫及答案
- 云智算中心項目建設(shè)方案
- 空氣調(diào)節(jié)用制冷技術(shù)課件
- 艾乙梅培訓(xùn)課件
評論
0/150
提交評論