基于微信小程序的數(shù)據(jù)結構學習平臺設計
摘 要: 為方便實施數(shù)據(jù)結構課程線上線下混合教學模式,基于微信小程序設計并實現(xiàn)了數(shù)據(jù)結構移動學習平臺。該系統(tǒng)前臺具有個人中心、微課視頻、實訓案例、試題擂臺、社區(qū)論壇等功能,后臺具有賬戶管理、資源管理、統(tǒng)計分析等功能。運行結果表明,該平臺節(jié)省內(nèi)存,使用流暢,方便學生利用智能手機和零碎時間隨時隨地學習,提高了學習效果。
關鍵詞: 微信小程序; 數(shù)據(jù)結構; 學習平臺
1 緒論隨著 4G 和 WIFI 技術發(fā)展,智能手機用戶不斷增加,高校學生利用手機進行移動學習需求不斷增加。相應的,高校也在不斷改革教學模式,很多老師對翻轉(zhuǎn)課堂、慕課、微課等新的教學模式進行了探索和實踐。[1-3]
數(shù)據(jù)結構是物聯(lián)網(wǎng)工程專業(yè)的專業(yè)基礎必修課,在物聯(lián)網(wǎng)工程課程體系中具有舉足輕重的地位。然而由于該課程涉及的算法有些比較抽象,實驗操作又要求學生具備較強的動手能力,學生在學習過程中容易遇到困難和問題,導致學生自信心受挫,學習興趣下降,學習主動性不足。再一個就是傳統(tǒng)的課堂教學模式中,學生是被動接受,且一節(jié)課容量較多,學生不容易消化,時間一長也會導致學生興趣下降,因此導致教學效果不理想?;谝陨鲜聦?,決定采用線上線下混合教學模式,將相關知識點分散,制作成微課、動畫、習題等各種豐富資源,學生可以根據(jù)自身需要通過線上隨時隨地學習,老師提供多種方式與學生互動,及時答疑解惑,從而提高學生學習效果。
微信小程序是一種基于微信平臺開發(fā)應用 APP 的新技術,具有無需安裝、即開即用、不占內(nèi)存、交互速度快等優(yōu)點。它提供一種新的開放能力,開發(fā)者可以快速地開發(fā)一個小程序。小程序可以在微信內(nèi)被便捷地獲取和傳播,同時具有出色的使用體驗。[4]而微信是一款日登陸用戶超過 8 億的手機應用,微信小程序的易推廣性顯而易見。[5]
基于微信用戶多、微信小程序開發(fā)快體驗好的特點,采用微信小程序開發(fā)數(shù)據(jù)結構移動學習平臺,可以滿足教師應用、推廣新的教學模式,也可以滿足學生利用智能手機和碎片時間隨時隨地學習。
2 需求分析
該移動學習平臺用戶是教師和學生,因此需要分別對教師和學生的需求進行收集整理。需求調(diào)查主要采用問卷和訪談的方式進行,最后將調(diào)查結果進行匯總整理。教師需求主要為:(1)無需安裝,使用方便;(2)界面簡潔,功能齊全;(3)即時交流,交互方便;(4) 數(shù)據(jù)分析,實時監(jiān)控。學生需求主要為: (1)少內(nèi)存,少流量;(2) 界面美觀,學習方便;( 3) 交互方便; (4)有趣味。
教師和學生需求的共同部分主要是關于數(shù)據(jù)結構學習平臺能提供的資源共享、師生交流和數(shù)據(jù)分析部分。資源共享與數(shù)據(jù)結構課程內(nèi)容相關,應根據(jù)課程特點來設計課程內(nèi)容和對應的資源。師生交流是移動學習平臺非常重要的功能,它是課程學習不可缺少的手段,使得為學生提供個性化學習更加便利。考慮到經(jīng)常有不同學生求教相同問題,為減少教師工作量,避免重復回答,可考慮論壇的形式。這樣教師就可根據(jù)具體情況,發(fā)起問題討論、或?qū)栴}置頂或?qū)栴}刪除,從而更方便的管理論壇,引導學生參與討論、分享經(jīng)驗、保持學習興趣。數(shù)據(jù)分析是教師掌控整個教學過程的必備工具,通過它可以對教學數(shù)據(jù)進行采集,對學生的線上學習進行監(jiān)控,量化學生學習情況,分析課程數(shù)據(jù),從而幫助教師更精準地教學。
3 課程資源設計
數(shù)據(jù)結構主要學習線性結構、樹形結構和網(wǎng)狀結構的邏輯結構特性、存儲結構定義及其基本運算的實現(xiàn)。但數(shù)據(jù)結構課程學習并不是件輕松的事,其中有些知識內(nèi)容較抽象,算法實現(xiàn)對學生的編程能力有較高要求。因此在設計數(shù)據(jù)結構移動學習平臺時,需要重新設計教學內(nèi)容和形式,將教學知識點分散化,呈現(xiàn)形式多樣化,應用案例豐富化,從而方便學生利用手機和零碎時間隨時隨地學習,并保持較持久的學習興趣。
采用模塊化思路,將數(shù)據(jù)結構知識點進行分塊整理和細化??紤]到有些學生的 C 語言基礎薄弱,將數(shù)據(jù)結構中經(jīng)常用到的結構體、指針、函數(shù)以及實驗環(huán)境 VC++6.0 中新建工程、文件和調(diào)試的方法也添加進去。最后整理出 10 塊共 74 個知識點,如下表所示。每個知識點根據(jù)需要可提供多種形式的學習資源,如順序表的插入算法,提供有微課視頻、課件、動畫以及隨堂測試,學生可根據(jù)需要靈活選取自己學習的形式。考慮到學生要求的趣味性,測試題設計成打擂臺的形式,將參與學習的學生進行評比排序,以激勵學生相互監(jiān)督,共同進步。
4 學習平臺設計
基于前面的需求分析,決定采用微信小程序進行數(shù)據(jù)結構移動學習平臺開發(fā),可以滿足師生即開即用、無需下載、使用方便的要求,同時設計了面向?qū)W生的前臺模塊和面向教師及管理員的后臺模塊,前后臺分別又劃分為滿足功能需求的若干小模塊。通過頁面上的“我是老師”和“我是學生”的導航欄,可以進入不同的頁面。下面介紹具體設計。
4.1 系統(tǒng)架構設計
該平臺是基于微信小程序的框架,面向開發(fā)用戶的是兩層,即:視圖層(View)和邏輯層(App Service),其實背后還有一個隱層,即系統(tǒng)層,該層被微信小程序的 MINA 框架封裝起來了,其中包括客戶端的文件系統(tǒng)、任務管理、數(shù)據(jù)安全以及網(wǎng)絡通信等功能,對于上層提供了一套完整的 JavaScript API,方便開發(fā)者快速構建起一個應用。[4]系統(tǒng)架構如圖 1 所示。
視圖層由一系列頁面組成,可以通過 WXML 標簽語言來構建頁面的視圖結構,通過 WXSS 樣式文件來控制頁面的樣式。邏輯層主要進行事務邏輯處理,使用 JavaScript 來實現(xiàn)頁面交互處理、網(wǎng)絡請求等操作??蚣艿暮诵氖且粋€響應的數(shù)據(jù)綁定系統(tǒng),讓數(shù)據(jù)和視圖保持同步,在修改數(shù)據(jù)時只需要在邏輯層修改,視圖層就會做出對應的更新。
4.2 功能模塊設計
該平臺功能主要分為前臺和后臺,其中前臺功能有:個人中心、課程課件、微課視頻、動畫演示、實訓案例、試題擂臺、實訓練習、通知公告、社區(qū)論壇、資源共享;后臺功能有:賬號管理、資源管理、公告管理、論壇管理、統(tǒng)計分析。前臺功能模塊圖如圖 2 所示,后臺功能模塊圖如圖 3 所示。
(1)個人中心:包括注冊、登錄、修改個人信息以及個人學習情況。
(2)課程課件:按內(nèi)容模塊及相應知識點組織課件,支持 PPT、PDF、WORD 等文件格式。
(3)微課視頻:按知識點設計組織,一般時長不超過 15 分鐘。
(4)動畫演示:對某些操作過程設計動畫進行演示。
(5)實訓案例:結合實際,提供從分析、抽象、設計到實現(xiàn)的全過程說明及代碼實現(xiàn)。
(6)試題擂臺:為強化知識點掌握,提高學習興趣,將試題庫做成擂臺賽形式,讓學生間進行比賽排名,相互激勵。
(7)實訓練習:提供實訓題目,學生可上傳實訓代碼。
(8)通知公告:通知更新的學習內(nèi)容、注意事項等,如上課時間和地點的變更、考試安排等。
(9)社區(qū)論壇:學生和老師交互的平臺,學生可以發(fā)帖,也可以回帖。
(10)資源共享:為學生提供更多的學習資源,如優(yōu)秀的慕課、學習技巧等。學生也可以上傳自己的資源,通過管理員審核后,可發(fā)布。
(11)賬號管理:對注冊用戶的管理。
(12)資源管理:對數(shù)據(jù)結構課程所有資源的增、刪、改等操作,下面又可按不同媒體分別管理。
(13)公告管理:對公告的增、刪、改、查操作。
(14)論壇管理:對論壇的審核及刪除等操作。
(15)統(tǒng)計分析:對知識點測試題、調(diào)查問卷的發(fā)布與查看,以及對學生用戶學習過程中產(chǎn)生的數(shù)據(jù)統(tǒng)計和分析。
學生端的學習導航欄按學習內(nèi)容模塊以樹型結構呈現(xiàn),不同知識點提供不同媒體呈現(xiàn)形式,如有多種方式,則并列提供。如赫夫曼樹的構建,提供有微課視頻、課件、動畫以及隨堂測試,學生可以根據(jù)自身需求,靈活選擇學習方式。
4.3 數(shù)據(jù)庫設計
將數(shù)據(jù)結構學習平臺中涉及的數(shù)據(jù)進行整理,設計了用戶表、課件表、微課表、動畫表、案例表、試題表、實訓練習表、公告表、發(fā)帖表、其他資源表、擂臺表、實訓代碼表、測試成績表共 13 個數(shù)據(jù)表,并將這些數(shù)據(jù)存放在學校的服務器中,使得通過學校的網(wǎng)絡課程和移動學習平臺均可訪問。
出于安全考慮,微信小程序不能直接連接數(shù)據(jù)庫進行數(shù)據(jù)操作。首先在服務器端寫一個 web 應用程序,提供 https 接口讓小程序調(diào)用。然后在小程序端通過 wx.request 向服務器發(fā)起請求,再由服務端程序來對數(shù)據(jù)庫進行數(shù)據(jù)操作。在數(shù)據(jù)返回微信端顯示時,還要轉(zhuǎn)換成微信能讀取的 json 樣式。也就是微信小程序和數(shù)據(jù)庫間的交互都是通過 JS 腳本進行的。
推薦閱讀:C語言程序設計教學探討
5 結語
微信小程序提供了一種開放能力,利用它用戶可以快速地開發(fā)出自己的應用,相比較傳統(tǒng)的手機 APP 開發(fā),更快捷便利?;谖⑿判〕绦蜷_發(fā)的數(shù)據(jù)結構移動學習平臺具備了線上教學基本功能,滿足了學生和教師的需求,為我校開展數(shù)據(jù)結構課程線上線下混合教學模式奠定了基礎。在今后的運行過程中,通過老師和學生反饋以及采集的數(shù)據(jù)分析,還可進一步改進。
參考文獻:
[1]渠慎明,劉珊,王青博,等.數(shù)據(jù)結構課程中的翻轉(zhuǎn)課堂教學模式研究[J].計算機時代,2018( 9) : 66-68.
[2]趙媛,王杰,周立軍,等.以計算思維為導向的 C 語言程序設計 MOOC 建設[J].實驗技術與管理,2018,35( 4) : 147-150.
[3]趙海冰,李瑛,邢翠芳,等.計算機程序設計課程教學中的微課程案例設計[J].計算機工程與科學,2016( 11) : 55-57.
[4]微信公眾平臺 | 小程序.小程序介紹[EB/OL].( 2017-1- 9) https: / /developers. weixin. qq. com/miniprogram/introduction / index.html? t = 18120420.
[5]涂相華,薛錫雅,曾志平,等." WECO 課堂" : 基于微信小程序 的 師 生 交 互 系 統(tǒng)[J]. 現(xiàn) 代 教 育 技 術,2018,28 ( 5) : 109-114.
《基于微信小程序的數(shù)據(jù)結構學習平臺設計》
- 職稱論文刊發(fā)主體資格的
- 政法論文淺析工會法主體
- 化學在初中教學中的情感
- 中學教育論文思想政治方
- 法治論文投稿法治型市場
- 雜志社論文發(fā)表淺析推動
- 新疆教育報投稿淺析學生
- 分男女招生錄取的合憲性
最新優(yōu)質(zhì)論文
- 水利水電工程師職稱論文
- 環(huán)境工程晉升高級職稱條
- 知網(wǎng)能免費下載論文嗎
- 河南群眾文化類職稱評審
- 音樂課老師晉升職稱必須
- 職稱論文發(fā)表可靠網(wǎng)站有
- 膜分離相關論文發(fā)表期刊
- 寫高職英語教育的論文怎
論文發(fā)表問題熱點
- 泥泵磨損論文適合哪些期
- 發(fā)表論文必須本省的期刊
- 工程師中級職稱評審條件
- 中醫(yī)藥論文準備常見問題
- 會計畢業(yè)論文職稱論文準
- 哪能咨詢發(fā)表論文期刊的
- 自考本科論文格式要求
- 學術期刊規(guī)范化需要注意