陳麗虹 王小敏 劉家寶



摘 ?要:開發一款用于高校課堂簽到與課堂小測試的微信課堂小程序,可方便高校教師實現在線課堂考勤、及時檢測學生的課堂學習成果,有利于高校教師開展后續的教學工作。文章在開發小程序的過程中采用面向對象分析方法研究分析系統,并結合UML工具模擬分析系統中的對象的活動過程。應用微信開發者工具、微信云服務器以及相關的API接口實現“GL互動小課堂”微信小程序的開發。
關鍵詞:小程序開發;面向對象分析方法;UML工具
中圖分類號:TP311.56 ? ? ?文獻標識碼:A 文章編號:2096-4706(2020)21-0076-04
Design and Implementation of WeChat Applet “GL Interactive Classroom”
CHEN Lihong,WANG Xiaomin,LIU Jiabao
(School of Information Technology,Guangdong Polytechnic College,Zhaoqing ?526100,China)
Abstract:The development of a WeChat classroom applet for college classroom check-in and classroom tests can facilitate college teachers to achieve online classroom attendance,detect studentsclassroom learning achievements in time,and help college teachers to carry out subsequent teaching work. In the process of developing the applet,the object-oriented analysis method is used to study the analysis system,and combines UML tools to simulate and analyze the activity process of objects in the system. The application of WeChat developer tools,WeChat cloud server and related API interface to realize the development of “GL interactive classroom” WeChat applet.
Keywords:applet development;object-oriented analysis method;UML tool
0 ?引 ?言
日常使用手機APP需要用戶先到應用商城下載對應的安裝包,再經過手機設備解壓后進行安裝,安裝好應用程序后需進行注冊登錄才能正常使用。隨著大眾對移動電子設備與應用軟件依賴度越來越高,軟件的更新迭代速度不斷加快,傳統APP開發周期較長且審核過慢等特點逐漸凸顯,開發者難以在短時間內開發出一款滿足用戶的需求的APP。相對于傳統的APP,微信小程序無需用戶下載解壓安裝,只需用戶搜索并點擊小程序即可使用。微信平臺作為小程序的編譯器,只要點擊小程序即可加載解析,與傳統的軟件開發相比,小程序的開發周期大大縮短,在當今應用更新迭代的速度不斷加快的情況下,對于小型系統而言,小程序更能適應當下移動設備軟件應用開發的需求。
1 ?需求調查與分析
現階段高等教育還是通過以學校為載體,課堂為主要場所的面對面授課形式開展教學活動,課堂教育在學生學習知識的過程中起到重要作用,尤其專業理論授課過程,授課方式呆板,授課形式以知識的灌輸為主,互動單一,學生反應差。學生在這種教學模式下,習慣了單向接受教師灌輸的知識,難以保證知識的理解、掌握程度。在這種教學模式下,教師講自己的,學生聽自己的,容易出現學生注意力不集中的問題,導致知識吸收效果大打折扣。教師在保證教學進度的前提下,忽略了學生掌握知識的程度,由上述問題可以看出目前課堂教學現狀的確存在教師與學生有效互動少、教學效果差等現象。因此提高教學有效互動,開發一款既能對課堂學生紀律的管理又能提供師生互動的教學平臺就十分重要。為解決以上問題,作者開發了一款小程序,并且負責后期的測試階段,目前,“GL互動小課堂”微信小程序的功能已實現,并成功將其應用到本校實際的課堂中。
2 ?軟件分析
2.1 ?小程序功能描述
使用“GL互動小課堂”小程序的教師用戶可以根據上課情況隨時發起課堂簽到、更新授課信息,在線編輯習題、發布課堂習題測試。學生用戶可實現在線簽到、習題作答、在線查詢習題測試結果。云端服務器要求能夠及時接收處理用戶的請求、及時反饋用戶的請求結果、保障用戶消息推進同步,如教師發起的課堂簽到與習題發布能得到及時有效處理并同步推送,學生用戶提交的簽到信息與習題作答情況能夠得到及時反饋。
2.2 ?開發技術要求
研究方法:采用面向對象分析方法研究開發“GL互動小課堂”微信小程序。分析過程應用UML工具來具體描述該小程序的功能實現過程。
開發技術:應用WXML、WXSS搭建布局小程序前臺界面,應用JavaScript搭建后臺操作邏輯并實現數據傳遞,云端數據處理采用微信云服務器來記錄小程序的用戶活動數據。
開發環境及工具:微信開發者工具及相關的SDK工具包。
2.3 ?小程序使用場景分析
該平臺使用對象:高校教師、高校學生。
教師端應實現的操作:發布課堂簽到、授課班級分類、講課課程分類、習題編輯發布、查收課堂簽到記錄與習題作答數據。
學生端應實現的操作:在線簽到、在線答題、查看習題作答記錄。
云端服務器信息處理:同步保存教師活動記錄、學生活動記錄,及時處理并同步更新數據。
2.4 ?采用OOA方法與UML工具研究小程序功能
云服務器能夠及時響應用戶發出的活動請求并反饋消息推送進度,可實現同步更新平臺數據、及時推送活動通知、動態記錄活動數據,保證信息同步。對于小程序中主要的活動過程可借助UML工具來描述活動的實現過程。
“課堂簽到”活動:由教師啟動“發起課堂簽到”操作觸發“課堂簽到”活動。學生點擊簽到,通知完成“課堂簽到”活動。“課堂簽到”活動事件實現過程如圖1時序圖所示。
“習題檢測”活動:由教師發布“課堂小測試”操作后,“習題檢測”活動事件生效。“課堂小測試”發布后,云服務器推送教師的活動通知到學生端,學生同步接收到該消息后可點擊作答,作答完成提交后即可查看答案。整個活動事件的流程如圖2所示。
3 ?軟件設計
3.1 ?微信小程序操作界面設計
教師端主頁功能組件:“首頁”“我的課堂”“我的習題”。其中,簽到活動由教師發起,先通過點擊“點擊進入課堂”按鍵即可在彈出的頁面表單里設置授課課程與授課班級,設置好相關數據后點擊“確定發起課堂簽到”按鍵即可發起簽到活動。
學生端主頁功能組件:“我的課堂”“我的個人中心”“我的習題記錄”。學生可在操作界面查收消息通知與查看習題作答情況。
3.2 ?后臺數據處理
首次使用“GL互動小課堂”小程序的微信用戶,其個人的相關信息將被云服務器所記錄。記錄的相關數據項包括:學生微信號、學生班級名稱、學生學號、學生姓名、首次信息登記入庫時間。
教師發起“課堂簽到”活動,云服務器響應活動并動態生成的課堂簽到文件,具體記錄數據項包括:教師微信號、教師授課班級、教師發起簽到活動時間、教師發起簽到地理位置、學生微信號、學生簽到時間、學生簽到地理位置。
學生點擊“課堂小測試”作答習題,答題并提交給云服務器后,云服務器將檢測學生的測試得分并記錄此次的得分數據,該過程需記錄的數據項包括:小測試ID號、學生微信號、題號標識、題號得分標識。
3.3 ?編碼實現小程序主要活動
“課堂簽到”活動:教師在手機微信端選擇“授課課程”“授課班級”后點擊“發起課堂簽到”按鈕,云服務器通過教師發出的活動請求之后將生成“《XX班級XX課程課堂簽到表》”記錄文件。其中,教師在微信界面點擊進入“GL互動小課堂”小程序后,云服務器響應教師發出的請求并通過wx.login()操作自動登記教師最近一段時間內的登錄信息,同時將是否成功“發起課程簽到”活動通過wx.showsToast()返回消息提示。教師點擊“發起課堂簽到”活動的請求會通過post請求告知云服務器,并向活動終點(學生微信端)推送響應“課堂簽到”通知。當學生接到該消息通知并點擊完成“課堂簽到”任務后,學生的已簽到信息將會被推送到云服務器并與教師的信息進行對比,若學生簽到時的定位(地理位置)與教師發起活動時的定位距離差在有效區間范圍內,則此次學生的簽到信息有效。即經過計算后兩者距離差需滿足以下條件:
{|wx.getLocation(Teacher)-wx.getLocation(Student)|} ≤M,M∈[0,100]
在本小程序的簽到頁面glcheckin.wxml中設置簽到按鈕button,并設置button中的一個屬性bindgetuserinfo= "get UserInfo",則當學生點擊“上課簽到”按鈕時,則前臺顯示返回的學生信息與getUserInfo()獲取到的學生信息一致。另外,在簽到界面也可通過頁面加載過程獲取學生信息。
該小程序的前臺界面布局及后臺邏輯編寫完成后,經過測試后可實現課堂簽到功能。授課教師在小程序中點擊按鈕發起“課堂簽到”活動后,“GL互動小課堂”小程序顯示簽到相關頁面如圖3~圖7所示。
“習題檢測”活動:教師點擊小程序界面的發起“課堂小測試”活動,發送前選擇課程與班級,選擇習題后點擊發送,云服務器響應教師的發送習題檢測請求,并將習題作答消息推送到學生端。
學生端收到教師發送的“課堂小測試”習題檢測通知后,在活動有效期內點擊習題作答,做完習題后點擊“提交”按鈕。學生向云服務器發出“提交”請求后原表單數據在真正提交給云服務器處理前會先檢測此次所提交的表單數據是否合理(若此時學生有題目未作答即檢測到arrary[i].state==0則將彈出“還有題目未作答”提示),數據成功提交給云服務器后,云服務器將自動匹配答案并計算此次“課堂小測試”得分,最后將此次的測試結果發回到學生端并同步記錄到教師任教課程的相關成績登記表中。其中,“課堂小測試”的測試得分的計算原則為:每一道題均設置正確選項標志,默認初始值為0(代表該題不得分),當學生題目作答正確時該題標志值為1。
4 ?教學應用情況
作者以半學期為試驗時間分別對“數據庫原理與SQL Server”“數據結構與算法”和“軟件工程與UML”三門課程進行對比試驗,選取兩個班級采用傳統的教學模式,另外兩個班級采用“GL互動小課堂”的教學模式作為測試樣本,最終通過期中測試以及問卷調查得出四個班級的課堂教學效果。從測試中發現采用“GL互動小課堂”的教學模式的班級平均成績明顯高于沿用傳統教學模式的班級。從問卷調查結果來看,對比原先生硬的點名方式學生更喜歡這種新型的簽到方式,且學生也更喜歡線上型的“課堂小測試”而非傳統的口頭提問。教師也從實際教授課程中發現采用小程序進行課堂互動,學生積極性以及課堂氛圍都有所提高。由此可得,采用“GL互動小課堂”能有效地調動學生上課積極性,同時也能取得良好的教學效果。
5 ?結 ?論
本次所開發“GL互動小課堂”小程序,主要包括簽到功能、題目管理功能和在線答題功能。簽到模塊幫助教師解決了傳統課堂簽到效率不高的問題。題目管理模塊幫助教師將教學設計中的互動小題保存到云服務器中,方便在多次課堂中的調用。在線答題模塊,在教師發布題目后,學生可在小程序進行回答,系統將答案收集后,會自動生成學生詳細的答題情況;教師可以通過查看學生答題情況了解學生對于知識的掌握,同時學生也可通過答題情況了解自己聽課的效率,由此激發學生在課堂上的學習積極性。
“GL互動小課堂”小程序主要的功能模塊已經開發完畢,但是在互動方面仍不夠完善,有待添加其余互動型的功能模塊,后續筆者會進一步完善此系統的功能。希望在未來的教學中,能有更多教師使用此系統。
參考文獻:
[1] 王玉洋.基于微信小程序的移動學習平臺環境構建與系統設計開發 [D].南京:南京大學,2018.
[2] 呂康鑫,王倩慧,冀陽娜,等.基于WeChat的“小班長”課堂輔助應用研究 [J].科技經濟導刊,2018,26(21):158-159.
[3] 閆萍,吳雄英,楊斯涵.微信“e教學”的應用設計 [J].當代教研論叢,2017(4):88.
作者簡介:陳麗虹(1996—),女,漢族,廣東汕頭人,助教,學士學位,研究方向:計算機科學與技術。