摘 要:近年來,親子研學(xué)(尤其是紅色研學(xué))需求愈發(fā)高漲,家長需要集中可靠的信息來源,同時研學(xué)機構(gòu)也需要觸及更多的客戶群體。為解決上述問題,文章進行了“紅研樂學(xué)”親子研學(xué)平臺的設(shè)計、實現(xiàn)及測試優(yōu)化等工作。該平臺基于微信小程序而開發(fā),服務(wù)于小學(xué)生家長和研學(xué)機構(gòu),提供從活動信息共享到用戶互動等全方位的服務(wù)。Node.js和Pinia等技術(shù)的運用保證了平臺的高效運行,給用戶帶來良好的體驗。該平臺作為一個互動的社區(qū),顯著提高了親子研學(xué)的可及性和服務(wù)水平,可助力研學(xué)機構(gòu)探索更加廣闊的市場機遇,滿足愈發(fā)迫切的親子教育需求。
關(guān)鍵詞:微信小程序;研學(xué)活動;互動平臺;親子教育
中圖分類號:TP311 文獻標識碼:A 文章編號:2096-4706(2024)13-0112-05
Design and Implementation of the“Red Study Tours”Parent-child Study Tours Platform Based on WeChat Mini Program
WANG Lei, GUAN Zhanpeng, LAI Yunyun
(Guangdong Baiyun University, Guangzhou 510450, China)
Abstract: In recent years, the demand for parent-child study tours, especially in the field of red study tours is increasingly high. Parents require a reliable and centralized source of information, while study tour organizations need to reach a broader customer group. Against this backdrop, this paper discusses the design, implementation, and test optimization of the“Red Study Tours”platform for parent-child study tours. It is developed based on a WeChat Mini Program, catering to primary school students' parents and study tour organizations, offering comprehensive services ranging from activity information sharing to user interaction. The use of technologies like Node.js and Pinia ensures efficient operation of the platform and provide users with a good experience. As an interactive community, this platform significantly enhances the accessibility and service level of parent-child study tours, helping study tour organizations explore wider market opportunities and meet the growing demand for parent-child education.
Keywords: WeChat Mini Program; study tour activity; interactive platform; parent-child education
0 引 言
隨著人們生活水平的提高和家庭教育理念的轉(zhuǎn)變,家長們越來越注重孩子的全面發(fā)展,親子研學(xué)活動逐漸成為家長們關(guān)注的焦點。這類活動不僅豐富了兒童的課余生活,還加強了親子之間的情感交流,成為眾多家庭的首選教育方式[1]。目前,親子研學(xué)活動需求日益增長,尤其是那些能夠結(jié)合紅色歷史的體驗式研學(xué)活動。隨著家長們受教育水平和數(shù)字化接受能力的不斷提高,他們擅于通過多種渠道收集有效信息,制定出游計劃,預(yù)設(shè)出游情境,對出游體驗形成初步感知[2]。然而,由于缺乏一個集中可靠的信息平臺,家長們在尋找合適的活動時往往面臨信息不對稱和服務(wù)質(zhì)量無法保證等問題,同時現(xiàn)有平臺在親子活動的深度介紹和家長間互動交流方面還不夠充分,家長們往往需要花費大量的時間和精力去篩選和驗證各種活動信息。另外,紅色研學(xué)旅行服務(wù)近年來也逐步開展線上推廣渠道的建設(shè)工作,加速線上推廣渠道跨平臺橫向協(xié)同在各類線上傳播媒介間建立交互式協(xié)作關(guān)系[3]。因此,亟須采用數(shù)字化手段連接供需兩端,促成信息的快速交互。
微信小程序是一種基于微信平臺的輕量級應(yīng)用程序,不需要下載安裝即可使用。隨著移動互聯(lián)網(wǎng)的發(fā)展,微信小程序已成為很多企業(yè)和個人開展推廣和營銷活動的重要手段[4]。因其具有便捷性、易用性特點和廣泛的用戶基礎(chǔ),業(yè)已成為連接家長和親子活動機構(gòu)的理想工具。家長們可以通過微信小程序獲取活動信息,查看活動內(nèi)容,與其他家長交流心得體會。
因此,筆者組建了“紅研樂學(xué)”親子研學(xué)公益平臺,并開發(fā)了配套小程序,利用數(shù)字化的手段提供一個全面、互動和可信賴的研學(xué)活動信息中心。通過這個平臺,家長不僅能快速找到適合自己孩子的活動,還能獲取到其他家長的真實反饋和活動機構(gòu)的詳細介紹。同時,親子研學(xué)活動機構(gòu)也可以利用這個平臺觸及更多潛在客戶群體。
1 相關(guān)技術(shù)及開發(fā)工具介紹
1.1 PHP語言
本項目的后端采用PHP語言開發(fā),該語言是一種廣泛使用的開源腳本語言,特別適用于網(wǎng)頁開發(fā),并可嵌入到HTML中使用[5]。選用ThinkPHP框架進行后端開發(fā)。ThinkPHP是一個快速、簡單、高效的PHP開發(fā)框架,支持多種數(shù)據(jù)庫操作,提供豐富的功能組件,有利于提高開發(fā)效率以及保證項目的穩(wěn)定性。
1.2 Pinia技術(shù)
在前端狀態(tài)管理方面,本項目選擇使用Pinia。Pinia是一個面向Vue.js的狀態(tài)管理庫,提供了輕量級、易于理解和維護的狀態(tài)管理解決方案。一個Store(如Pinia)是一個實體,它持有未綁定到組件樹的狀態(tài)和業(yè)務(wù)邏輯,托管全局狀態(tài)。Pinia的使用有助于實現(xiàn)更加高效和清晰的狀態(tài)管理,尤其是在復(fù)雜的用戶界面和多組件交互場景中[6]。
1.3 Node.js技術(shù)
本項目在前后端的開發(fā)中均使用了Node.js編寫。在前端部分,Node.js用于構(gòu)建用戶界面,尤其是在處理高性能交互和實現(xiàn)微信小程序功能方面發(fā)揮的作用更大。Node.js的非阻塞I/O模型確保了應(yīng)用的高響應(yīng)性和快速加載。在后端服務(wù)中,Node.js負責處理HTTP請求、連接數(shù)據(jù)庫以及執(zhí)行后端邏輯。Node.js的高效性能對于處理大量的用戶請求和數(shù)據(jù)交換至關(guān)重要。
1.4 微信小程序及開發(fā)者工具
微信小程序提供一個使用靈活且功能豐富的開發(fā)環(huán)境,使快速開發(fā)和部署應(yīng)用成為可能。它結(jié)合了易用性和高效性,特別適用于快速迭代和實時更新。微信小程序的設(shè)計允許開發(fā)者創(chuàng)建直觀且響應(yīng)迅速的用戶界面,提高用戶體驗和互動性,這正符合“紅研樂學(xué)”親子教育平臺所需。
微信開發(fā)者工具是專為微信小程序設(shè)計而打造的集成開發(fā)環(huán)境,它提供代碼編輯、調(diào)試、項目預(yù)覽和模擬測試等功能。這一工具大大簡化了開發(fā)流程,支持熱重載和實時預(yù)覽,使開發(fā)者能夠即時查看并測試代碼更改的效果[7]。
2 需求分析與架構(gòu)設(shè)計
在設(shè)計“紅研樂學(xué)”微信小程序時,首先對用戶需求進行了深入分析,并基于這些需求構(gòu)建了系統(tǒng)的整體架構(gòu)。
2.1 需求分析
需求分析主要包括用戶角色、展現(xiàn)方式、交互功能、權(quán)限管理等方面[8]。首先,用戶通過手機號完成注冊并登錄,同時需勾選同意用戶協(xié)議。首頁的輪播圖展示當前啟用的活動,用戶可通過點擊輪播圖跳轉(zhuǎn)到相應(yīng)的活動詳情。推薦筆記按最新發(fā)布和熱門標簽動態(tài)展示,以無縫滾動分頁的方式呈現(xiàn)在首頁底部,便于用戶發(fā)現(xiàn)和參與。筆記詳情頁可豐富用戶體驗,允許用戶查看媒體內(nèi)容和標簽,進行點贊、收藏和評論,增強了平臺的互動性和社區(qū)感。用戶還可以在個人中心查看和編輯個人信息,管理自己發(fā)布和收藏的筆記。為確保評論區(qū)能夠擁有一個健康和積極的氛圍,過濾敏感詞匯和違規(guī)內(nèi)容,而手動管理則允許管理員審核和刪除不當評論。在用戶界面設(shè)計上,評論區(qū)域布局清晰,易于閱讀和編寫新評論。使用Pinia進行狀態(tài)管理,確保評論數(shù)據(jù)實時更新且與用戶界面保持同步。為了簡潔有效地描述上述交互過程,采用用例圖進行展示,如圖1所示。
在實現(xiàn)功能的前提下,“紅研樂學(xué)”微信小程序的非功能性需求還應(yīng)考慮性能、安全性、可用性和可維護性。在性能方面,平臺必須能夠快速響應(yīng)enSs8h6jgDnmERM3a3T7tTFuyNpeXsK+HYxez2/GACc=用戶的操作,通過采用云存儲、可擴展分布式架構(gòu)、MySQL分庫分表、Redis高速緩存實現(xiàn)應(yīng)用的流暢性和穩(wěn)定性。在安全性方面,為了確保內(nèi)容的質(zhì)量,嚴格用戶的授權(quán)管理,只有經(jīng)授權(quán)的用戶才能發(fā)布信息。在可用性方面,用戶界面設(shè)計簡潔直觀,優(yōu)化用戶操作路徑,確保用戶無論技術(shù)背景如何皆能輕松使用平臺。在系統(tǒng)的可維護性方面,代碼結(jié)構(gòu)要清晰,易于后期維護和升級。
2.2 系統(tǒng)架構(gòu)
根據(jù)上述的需求分析,系統(tǒng)包括用戶端和管理端兩個訪問界面,用戶端包括登錄/注冊、首頁顯示、筆記管理、個人中心等模塊;而管理端則包括管理員登錄、系統(tǒng)管理、平臺管理及用戶管理等模塊,如圖2所示。
在架構(gòu)設(shè)計方面,設(shè)計內(nèi)容涉及前端開發(fā)、后端邏輯及數(shù)據(jù)存儲。前端開發(fā)端采用微信小程序標準的開發(fā)框架,確保用戶界面的一致性和流暢性。在界面設(shè)計方面,注重用戶操作的便捷性和信息展示的清晰性。后端邏輯處理采用Node.js進行構(gòu)建,以滿足高并發(fā)和數(shù)據(jù)實時處理的需求。后端負責用戶認證、數(shù)據(jù)處理和業(yè)務(wù)邏輯的實現(xiàn)。在數(shù)據(jù)存儲方面,選用性能穩(wěn)定且易于擴展的數(shù)據(jù)庫解決方案,以存儲用戶信息、活動數(shù)據(jù)和互動內(nèi)容。對數(shù)據(jù)庫進行優(yōu)化,以此保證數(shù)據(jù)讀寫的高效和安全。
3 系統(tǒng)具體實現(xiàn)
3.1 用戶登錄
小程序在啟動后通過loginReg方法的type字段來判斷登錄方式(賬號密碼、微信公眾號、手機驗證碼、微信小程序、微信手機號碼登錄)。通過getCode()方法獲取微信回調(diào)的code,通過微信接口服務(wù)進行手機號的授權(quán)。對于首次登錄的用戶,程序通過loginAgreement()來獲得用戶協(xié)議列表,待用戶同意后允許登錄,如圖3所示。返回token以及登錄狀態(tài)碼。系統(tǒng)開發(fā)時要對前端輸入的密碼進行加密,這樣可以在密碼提交過程中防止他人利用HTTP協(xié)議上的漏洞獲取明文密碼,導(dǎo)致用戶賬號和密碼的泄漏[9]。
3.2 頁面瀏覽
用戶成功登錄首頁后,頁面頂部將顯示輪播圖,顯示近期的熱點活動和信息。程序通過noteList()列出筆記并附帶標簽列表,以便用戶便捷高效地搜索相關(guān)話題。筆記的縮略圖在用戶界面上呈現(xiàn)為可滾動的畫面,用戶可以點擊想進一步瀏覽的筆記,程序調(diào)用showDetail()顯示筆記的詳情,而showReview()隨即列出附帶的評論信息。
3.3 交互功能(點贊、收藏、分享與評論)
如圖4所示,用戶可以對感興趣的筆記點贊,doLike()的status字段對應(yīng)點贊的狀態(tài)。而doCollect()實現(xiàn)了用戶對該筆記的收藏,收藏的字段將同步到noteList()。這些狀態(tài)都實時更新到后臺,并反映在前端界面上。利用微信小程序的API,用戶可以將喜歡的內(nèi)容分享到微信朋友圈或私聊,分享操作簡潔而直觀,增加了平臺內(nèi)容的傳播范圍。授權(quán)用戶可以對筆記發(fā)表評論或刪除已發(fā)表過的評論,程序通過writeReview()支持這一功能,通過delReview()支持刪除評論。作為面向公眾的平臺,任何不當言論都可能對組織造成惡劣的影響,因此,通過noteService.checkSenitiveWord()檢查是否存在敏感詞,拒絕發(fā)布存在敏感詞的評論。
3.4 筆記發(fā)布
如圖5所示,授權(quán)用戶通過點擊界面上的“+”號添加筆記。這一過程通過editInfo()處理,調(diào)用uploadMedia()進行附件(視頻或照片)的上傳,系統(tǒng)使用form multipart支持多種媒體格式,自動調(diào)整文件大小以適應(yīng)不同的網(wǎng)絡(luò)條件。用戶可以根據(jù)需要添加或刪除要上傳的附件,程序通過delAttach()刪除筆記附件。與上述的評論功能相同,敏感詞檢查也需要在這個模塊里面調(diào)用。
3.5 個人中心
個人中心是用戶的主頁,將顯示登錄按鈕、用戶頭像和用戶昵稱,如圖6所示。用戶通過點擊登錄按鈕是否授權(quán)小程序使用微信信息,當用戶同意授權(quán)時,登錄頁面就會顯示用戶頭像和昵稱,以及筆記相關(guān)的數(shù)據(jù)信息[10]。showInfo()顯示用戶的基本信息,uploadIcon()實現(xiàn)用戶頭像的上傳,而showNoteData()展示該用戶參與的評論、點贊及收藏的數(shù)量。
3.6 管理端
在管理端的視圖中,系統(tǒng)管理員對后臺進行管理。通過用戶名、密碼和驗證碼的校驗checkVerifyCode()實現(xiàn)登錄。通過對用戶列表的增刪改handleUser(),實現(xiàn)用戶的日常管理以及權(quán)限的授予。管理端可以實現(xiàn)多項后臺管理功能,包括配置首頁的輪播圖uploadSlideShow(),編輯登錄協(xié)議,后臺編輯筆記及附件editAttach()等。此外,還具備標簽管理和敏感詞管理功能?!凹t研樂學(xué)”后臺管理頁如圖7所示。
3.7 用戶界面設(shè)計
用戶界面采用簡潔明快的設(shè)計風(fēng)格,以提高用戶體驗。特別是對圖片和視頻的展示,本項目采用了清晰的布局和大小適宜的縮略圖,確保用戶能夠輕松瀏覽和選擇內(nèi)容。程序的登錄封面特別設(shè)計了精美的gif書法字體,不僅增添了文化氛圍,也提高了用戶對平臺的第一印象,如圖3所示。
上述功能的具體實現(xiàn),結(jié)合了前沿的技術(shù)和對用戶需求的深刻理解,使得“紅研樂學(xué)”成為一個既實用又富有吸引力的教育平臺。
4 實驗測試
為確?!凹t研樂學(xué)”微信小程序的卓越性能與可靠品質(zhì),本項目實施了一系列綜合性的測試。在功能測試方面,設(shè)計一系列測試用例,涵蓋所有功能模塊,包括用戶登錄、內(nèi)容上傳、瀏覽、點贊、分享和評論等。在界面與交互方面,確保用戶界面的每個元素(如按鈕、輸入框等)都能按預(yù)期工作。同時,測試用戶交互的流暢性和直觀性。在邊界條件測試方面,在各種極端條件(如網(wǎng)絡(luò)不穩(wěn)定、大量用戶同時操作等)下測試應(yīng)用的表現(xiàn),確保系統(tǒng)穩(wěn)定性。在性能測試方面,重點測試頁面加載和內(nèi)容加載的速度,確保用戶獲得流暢的使用體驗。
5 結(jié) 論
本項目實現(xiàn)了“紅研樂學(xué)”小程序,提供一個集中、互動的親子研學(xué)活動信息平臺。它使家長能夠輕松地找到、參與和討論親子活動,同時也為研學(xué)機構(gòu)提供了有效的宣傳途徑。“紅研樂學(xué)”微信小程序的開發(fā)和實施對于促進親子研學(xué)活動的普及和提高家庭教育質(zhì)量具有重要意義。同時,在數(shù)字化技術(shù)的加持下,紅研樂學(xué)項目可以借助這個平臺探索更廣泛的市場機會。隨著親子研學(xué)項目的發(fā)展演進,在未來,本項目將繼續(xù)優(yōu)化和擴展平臺功能,不斷提高用戶體驗,拓寬服務(wù)范圍,以滿足日益增長的親子研學(xué)需求。
參考文獻:
[1] 中國旅游協(xié)會.中國親子與研學(xué)旅行行業(yè)年度發(fā)展報告(2022) [R/OL].(2023-08-07).http://www.chinata.com.cn/sys-nd/499.html.
[2] 李旭嬌,叢一,董宇博,等.家庭親子游的需求特征、行為取向與引導(dǎo)機制研究 [J].石家莊學(xué)院學(xué)報,2023,25(6):73-79.
[3] 張利永.基于4R營銷理論的公共圖書館紅色研學(xué)旅行服務(wù)研究 [J].圖書館工作與研究,2023(12):85-92.
[4] 白陽,李志剛,陳健鋒.基于微信小程序的智慧運維服務(wù)系統(tǒng)搭建 [J].廣播電視網(wǎng)絡(luò)嗎,2023,30(10):33-35.
[5] PHP.PHP手冊[EB/OL].[2023-12-11].https://www.php.net/manual/zh/preface.php.
[6] Pinia中文文檔.核心概念 [EB/OL].[2023-12-13].https://
pinia.web3doc.top/.
[7] 馬立剛.基于微信小程序的數(shù)字化安全檢查平臺的設(shè)計與實現(xiàn) [J].電子元器件與信息技術(shù),2023,7(6):97-101.
[8] 王玉洋.基于微信小程序的移動學(xué)習(xí)平臺環(huán)境構(gòu)建與系統(tǒng)設(shè)計開發(fā) [D].南京:南京大學(xué),2018.
[9] 朱偉,邱浩偉.基于微信小程序的檢驗檢測綜合業(yè)務(wù)報價系統(tǒng)設(shè)計與開發(fā) [J].中國檢驗檢測,2023,31(4):76-79+56.
[10] 倪改玲,王會霞,鄒超,等.“急救課堂”微信小程序的設(shè)計與開發(fā) [J].中國醫(yī)學(xué)教育技術(shù),2022,36(6):670-674.
作者簡介:王蕾(2003—),女,漢族,廣東惠州人,本科在讀,研究方向:市場營銷;關(guān)展鵬(1981—),男,漢族,廣東廣州人,高級工程師,碩士,研究方向:網(wǎng)絡(luò)空間安全和云計算;賴韻韻(1981—),女,漢族,江西會昌人,助教,碩士,研究方向:市場營銷學(xué)實戰(zhàn)型教學(xué)。