分享
基于微信小程序的云计算学习平台开发.pdf
下载文档

ID:3117708

大小:1.41MB

页数:5页

格式:PDF

时间:2024-01-21

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于 微信小 程序 计算 学习 平台 开发
第 22卷 第 9期2023年 9月Vol.22 No.9Sept.2023软 件 导 刊Software Guide基于微信小程序的云计算学习平台开发丁晓进,朱晓荣(南京邮电大学 通信与信息工程学院,江苏 南京 210003)摘要:云计算课程具有知识点多、难度大、学生专业基础参差不齐的特点,需要学生投入更多时间进行自主学习。考虑到目前尚无专门针对云计算课程的学习平台,并且该平台不仅要满足学生学习需求,还需具备在Windows、Andriod、iOS等系统上运行的能力。为此,基于微信的普及性且微信小程序可跨系统运行,开发了一个云计算学习平台,对学习、答题、复习等环节构建了登录、答题、课件管理、教材管理、统计分析5个功能模块。实践表明,该平台不仅可跨系统稳定运行,还能通过提升学生学习体验来激发学习兴趣,从而明显降低课程的不及格率。关键词:云计算;学习平台;微信小程序;跨系统;学习兴趣DOI:10.11907/rjdk.222149开 放 科 学(资 源 服 务)标 识 码(OSID):中图分类号:TP317 文献标识码:A文章编号:1672-7800(2023)009-0108-05Learning Platform Development for Cloud Computing via WeChat Mini ProgramDING Xiaojin,ZHU Xiaorong(School of Telecommunications and Information Engineering,Nanjing University of Posts and Telecommunications,Nanjing 210003,China)Abstract:Cloud computing courses have the characteristics of multiple knowledge points,high difficulty,and uneven professional foundations for students,requiring them to invest more time in independent learning.Considering that there is currently no dedicated learning platform for cloud computing courses,and this platform not only needs to meet students learning needs,but also needs to have the ability to run on systems such as Windows,Android,and iOS.To this end,based on the popularity of WeChat and the ability of WeChat mini programs to run across systems,a cloud computing learning platform has been developed.Five functional modules have been built for learning,answering questions,courseware management,textbook management,and statistical analysis,including login,answering questions,and review.Practice has shown that the platform can not only operate stably across systems,but also stimulate students interest in learning by improving their learning experience,thereby significantly reducing the failure rate of courses.Key Words:cloud computing;learning platform;WeChat mini program;cross system;learning interest0 引言云计算课程作为操作系统原理、数据库系统原理、Linux编程的后续课程,覆盖的专业知识点主要包括Google文件系统GFS、分布式数据处理MapReduce、分布式锁服务Chubby、分布式结构化数据表 BigTable、Hadoop 开源云架构、虚拟化技术等1-2。然而,该课程授课学时仅为 32个学时,通常情况下需要授课教师引导学生自主学习,并及时掌握学生学习情况。目前,由于缺乏专门针对云计算的学习平台,学生课后主要利用教材进行学习,并辅以网页、视频APP查询资料,既使得学生难以有效评估自身学习效果,还难以激发学生学习兴趣。此外,学生与授课教师间缺乏有效的交互,导致教师无法及时掌握学生学习情况。由于设计云计算学习平台既需要考虑学生利用Andriod、iOS、Windows等系统进行学习的需求,又要基于Cordova3-4、Flutter5-6等跨系统开发框架,因此给平台设计造成了一定的困难。在传统小程序开发模式中,开发者不仅需要从小程序端额外引用软件开发工具包(Software Development Kit,SDK)请求后端,还需关注弹性伸缩、异地容灾、网络防护、安全加固等问题,这种前后端分离的模式需要收稿日期:2022-10-08基金项目:教育部协同育人基金项目(201902295017);南京邮电大学教改基金项目(JG01620JX46,JG00218JX75)作者简介:丁晓进(1981-),男,博士,南京邮电大学通信与信息工程学院副教授、硕士生导师,研究方向为云计算、卫星通信;朱晓荣(1977-),女,博士,南京邮电大学通信与信息工程学院教授、博士生导师,研究方向为边缘计算、移动通信。本文通讯作者:丁晓进。第 9 期丁晓进,朱晓荣:基于微信小程序的云计算学习平台开发在物理机托管、云主机、容器等方面投入较多人力资源,严重影响小程序的开发效率。然而,微信小程序在支持跨系统的同时,具有无需安装、在线升级维护等优点7-8,极大降低了开发成本,使用者打开即用。云开发打通了微信生态,无需搭建服务器,提供了云数据库、云存储、云函数、云托管、云调用、微信支付、环境共享、内容管理等功能。为此,本文利用云开发模式设计一个基于微信小程序的云计算学习平台,旨在有效激发学生学习兴趣、便于在生生、师生相互交互的同时提升学习平台的开发效率。1 微信小程序开发框架微信小程序目录结构包括小程序页面pages和小程序app相关配置9,如图1所示。图1中,pages包含.js页面逻辑、.json页面配置、.wxml页面结构、.wxss页面样式和通过其他小程序框架编译后的文件;app.js为小程序的全局逻辑文件,可设置账号环境、检测更新、定义全局变量等功能;app.json为小程序全局配置,不仅可定义相关pages页面保存后所生成的page结构,还可定义全局组件及tabBar;app.wxss为小程序公共样式;utils用于存放工具类;sitemap.json配置是否允许被索引;project.config.json 为项目的配置文件。此外,还包括自定义的组件、引用的外部组件和云函数等。Mpvue(Mini Program Vue)基于Vue.js开发小程序前端框架,可在小程序环境中运行,形成了组件化开发能力,不仅能提升代码复用性,还可利用 Vuex数据管理方案构建复杂应用或将H5代码转化成小程序目标代码10。2 基于微信小程序的云计算学习平台设计云计算学习平台的核心是满足师生教与学的真实需求,具备跨系统、易用性和低成本等特性。由于微信小程序具有跨系统、即开即用等优点,本文基于微信小程序设计云计算学习平台。2.1平台功能本文针对学习、答题和复习等环节的具体需求,基于微信小程序设计的云计算学习平台包括登录、答题、课件管理、教材管理、统计分析5个主要模块,开发工具包括微信开发者工具稳定版 1.05.2102020、TencentDB for MongoDB11、云数据库12、Serverless Cloud Function、云函数、Cloud Object Storage、云存储13、CloudBase CMS、内容管理系统、Vant-weapp、组件库、Mpvue、小程序框架14,15,总体功能结构如图2所示。用户登录后可选择教材、课件和答题模块进行学习,学习后还可进一步选择统计分析模块查询和分享自身学习情况,平台具体操作流程如图3所示。2.2数据库设计本文开发的学习平台涉及的数据表包括学生集合微信小程序pagesapp.jsapp.jsonapp.wxssutilsSitemap.jsonProjectconfig.json其他外部样式、文件应用项目配置是否允许微信搜索存放全局文件.js文件小程序公共样式表小程序公共配置小程序逻辑其他页面(目录同index)index页面逻辑文件页面配置文件页面结构文件页面样式文件index.jsindex.jsonindex.wxmlindex.wxssFig.1WeChat Mini program directory structure图1微信小程序目录结构用户登录学习平台平台主界面选择模块学习继续学习学习进入退出平台否是是否 Fig.3Platform operation process图3平台操作流程云计算学习平台登录模块答题模块课件管理模块教材管理模块统计分析模块用户校验保存信息排行榜数据分析查询课件分类教材信息记录分享退出Fig.2Platform functional architecture图2平台功能架构 1092023 年软 件 导 刊(students)、用户信息(profiles)、考试信息(exam)、考试内容(questions)、教材集合(textbook)、作业集合(homework)、学生答题记录(historys)、学生作业作答信息(homework-comment)、学生错题记录(notes)共 9张表。具体开发时,可在云开发控制台创建数据表集合,也可在CMS内容管理系统中可视化创建16,17。例如,学生作业作答信息(homework-comment)表所需字段包括记录 id(系统自动生成)、用户 id、创建时间、更新时间、作业 id、作业评分、作业内容、用户名、作业对应章节等字段。3 云计算学习平台3.1登录模块为了提升用户体验,让用户产生归属感,设计了主题明确的欢迎界面,并插入校验功能,即非规定用户名单内的用户无法进入学习平台。其中,欢迎界面获取、校验用户的微信授权信息,合法用户可直接进入小程序并提醒登录用户使用小程序,非法用户进入将提醒管理员;登录界面获取用户微信授权信息,用户未登录时提示用户登录,登录后显示用户头像、名字,已登录过的用户可自动登录,系统将获取用户唯一标识并保存。程序开发时,在微信开发者工具的 Pages中新建 Start页面,并在 Start.wxml、Start.wxss 设计界面样式。具体而言,在 Start.js生命周期 onLoad 函数中调用 onQuery()、onGetOpenid()函数,并在用户点击立即进入按钮后绑定goHome()函数。其中,onQuery 函数用于查询 Profiles 数据库,并将结果按照Openid和对应的userInfo分组保存在全局变量中,以便后期生成排行榜时获得用户信息;onGetOpenid函数用于调用登录Login云函数,以获取用户Openid并将其保存到全局变量中;goHome函数用于获取用户授权信息,并根据授权名单校验用户信息并给予提示,合法用户可进入小程序,否则无法进入。3.2答题模块答题模块包括模拟考试和课后作业子模块。模拟考试子模块中,学生在规定时间内答题,一旦时间结束后系统自动交卷并记录作答信息,以便学生后期寻找未作答的题目,交卷后学生可选择查看分数排行榜、错题或重做,还可将成绩一键发送给授课教师;学生可在课后作业子模块中完成课后作业。区别于常见的小程序,本文设计的学生答题模块设计倒计时、答题自动批改和提交等功能,不仅能提升学生作题效率,还便于学生在答题后进行针对性复习,以激发学生学习兴趣。倒计时功能实现逻辑如下:输入:倒计时数值,即总分钟数minute。1.初始化计数变量count=592.count=count 13.如果count10,则学习界面显示:“倒计时:minute:count”;否则,显示:倒计时:“minute:0 count”,且如果 count=0,minute=minute-1,count=594.判断剩余的分钟数minute是否大于零,如果大于零,且学生未点击交卷,则转到2;否则,结束计时,且如果学生未交卷,自动交卷答题自动批改和提交功能流程图如图4所示,学生答题时可自动批改并统计答题情况,在学生完成答题后立即将大体情况呈现给学生,学生既可选择查看错题及解析,也可选择重新作答。答题模块具体开发时,在微信开发者工具Pages中定义了Home、Exam、ExamHome、ExamResult共4个页面。其中,Home页面中onLoad生命周期函数获取全局变量Openid,调用Query()函数查询试题信息,每道试题绑定Go()函数跳转到ExamHome页面;Exam业面主要包括倒计时、单选、多选、自动滑动下一题、结果记录、交卷等功能;ExamResult页面在微信公众平台订阅消息模块配置完善模板消息内容,将模板Id配置到SendMessage云函数和小程序对应字段,并联调小程序和云函数对应的模板字段内容,一旦学生发送消息,授课教师将收到微信推送的模板消息。3.3课件管理模块目前,高校课件通常为各学科代表收集后发布在班级群,很少分类、章节、目录的管理课件,造成学生搜寻课件的时间成本较高、体验较差。本文设计的学习平台利用云存储方法存储、管理课件,教师可通过CMS内容管理系统上传、下架课件,以便于学生在小程序端实时查看每章节对应的课件,文件类型支持WORD、PDF、PPT等多种格式。具体开发时,在Pages文件夹新建BookShelf页面,主要功能为打开、查看文件,核心代码如下:wx.cloud.downloadFile(fileID:e,success:res=/get temp file pathconsole.log(res.tempFilePath)wx.showToast(初始设置选择选项查询题目答案记录正确答题数是否为最后一题是否选中自动交卷否是是否是否正确记录错误答题数,并记录到错题库答题结果呈现 Fig.4Platform question answering process图4平台答题流程 110第 9 期丁晓进,朱晓荣:基于微信小程序的云计算学习平台开发title:打开中,)wx.openDocument(filePath:res.tempFilePath,success:function(res)console.log(打开文档成功)wx.hideToast()3.4教材管理模块本文设计的学习平台提供了教材管理,学生上课或课后均可打开平台中的教材进行学习,便于学生日常学习。相类似的,教材管理也通过CMS内容管理系统进行小程序的数据交互,支持文件类型也一致。开发时,在Pages文件夹新建Book页面,主要功能与课件管理一致,但采用的布局和查询数据库不同,具体差异如下:db.collection(textbook).where(textname:云计算).get().then(res=console.log(res)this.setData(list:res.data 0)3.5统计分析模块为了让教师更好的掌握学生学习状况或让学生了解自身学习情况,本文设计的学习平台基于数据库记录的答题、作业信息实现了统计分析模块。通过该模块教师可发现学生学习中存在的问题,方便因材施教和针对性地调整教学内容;学生也可查看错题和排名,将学习情况分享到朋友圈。具体开发时,需在 Pages 文件下新建 History、Note 页面,分别对应成绩记录和错题记录。成绩记录包含答题时间、答题得分和答题用时,点击记录将显示本次答题中错误的题目列表,若无错题则提示返回。错题记录中分为答题模式和背题模式,复用了答题模块组件。4 实施效果学习平台开发完成后,可在微信开发者工具中点击上传按钮,填写版本号和项目备注即可完成上传,待官方人员审核通过后即可进行发布。为验证平台运行的稳定性,在选修本课程的2021-2022学年第1学期184名学生中试用所设计的学习平台,经测试各项功能均正常。为进一步评估学习平台在学生学习云计算课程方面的实际效果,将2020-2021学年第1学期选修本课程的149名学生的学习效果作为对照组进行比较。具体的,通过问卷调查2020-2021学年第1学期、2021-2022学年第1学期学生的课堂、课后学习兴趣,并结合期末考试不及格率进行深入分析。调查结果表明,该课程的学生学习兴趣由45%提升到84%,原因是学习平台的教材学习、课件学习、在线习题和错题查看等模块为学生学习提供了极大的便利。此外,师生间快速交互、学习排行榜查看、朋友圈分享等功能模块能显著提升学生学习兴趣。一旦学生学习兴趣提升,不仅会在课程学习中投入更多时间,还能明显提升学习效率。实验表明,该课程的及格率由22%降到4%左右。综上,实践结果证实了所设计的平台能切实提升学生学习兴趣和效果,降低学生的不及格率。5 结语本文基于热门的微信小程序开发了一个云计算学习平台,并将其应用于云计算课程的学习过程中,支持学生通过安卓手机、苹果手机、电脑等工具进行访问,既让学生能够课后自主学习、完成相关答题,还生成了相关排行榜,允许学生将学习记录分享到朋友圈。通过这些功能为生生、师生之间营造出良好的互动交流氛围。实践结果表明,分析学生学习记录可有效指导云计算授课教师进行更具针对性的教学安排,一方面能提升学生学习质量,另一方面改善了学生学习体验,对提升教学质量具有一定的积极作用。然而,平台设计还在不断更新迭代中,技术领域还有许多内容亟待革新。总体而言,平台后期应用范围将逐步扩大,功能也会逐步健全,具有更加广阔的发展空间。参考文献:1 FAN M M,LIU D.Research on the influence of online peer questioning strategy on deep learning ability taking cloud computing course as an example J.Software Guide,2022,21(2):226-230.范慜慜,刘丹.在线同伴提问策略对深度学习能力的影响研究以云计算课程为例 J.软件导刊,2022,21(2):226-230.2 DING X J,ZHU X R.Teaching exploration of combining classroom and after class for cloud computing course J.Journal of Electrical and Electronic Education,2022,44(2):28-31.丁晓进,朱晓荣.兼顾课堂与课后的“云计算”课程教学探索 J.电气电子教学学报,2022,44(2):28-31.3 SUKMANA F,ROZI F.Digitalization in scanning and remote shutdown host of computer using Apache Cordova framework J.Jurnal Ilmiah Penelitian dan Pembelajaran Informatika,2019,4(2):88-96.4 FANG Q.The construction of mobile client of abnormal mail double record and query system based on Ionic+AngularJS+Cordova framework J.Studies on Posts,2018,34(1):25-27.方全.基于Ionic+AngularJS+Cordova框架的异常邮件双录查据系统手机客户端的构建 J.邮政研究,2018,34(1):25-27.5 NI H J,ZHOU Q K.Development of cross platform laboratory safety learn 1112023 年软 件 导 刊ing platform based on Flutter J.Software Guide,2022,21(9):99-102.倪红军,周巧扣.基于Flutter的跨平台实验室安全学习平台开发 J.软件导刊,2022,21(9):99-102.6 JIANG P C,LI Z.Design and implementation of fast intelligent decision App based on Flutter framework J.Computer Products and Circulation,2020(9):107,109.蒋鹏程,李震.基于 Flutter框架的快速智能决策 App的设计与实现J.计算机产品与流通,2020(9):107,109.7 LIU Y,ZHANG X B.Application and analysis of WeChat mini program in the context of big data J.Wireless Internet Technology,2021,18(7):45-46.刘仪,张雪冰.大数据背景下微信小程序的应用与分析 J.无线互联科技,2021,18(7):45-46.8 DONG A T,WEN J H.Design and implementation of laboratory equipment management system based on mini program and cloud development J.Experimental Technology and Management,2019,36(10):282-284.董傲通,文俊浩.基于小程序 云开发的实验室设备管理系统的设计与实现 J.实验技术与管理,2019,36(10):282-284.9 WANG X X,HUANG J C.Analysis of application development based on WeChat mini programJ.Information Technology and Informatization,2021(3):23-25.王晓星,黄建昌.基于微信小程序的应用开发浅析 J.信息技术与信息化,2021(3):23-25.10 BRETT N.Getting to know Vue.js M.San Francisco:Apress,2018.11 SHI Y L,WANG X W,LIANG B,et al.Big data storage mechanism based on MongoDB in front communication platformJ.Power System Technology,2015(11):3176-3181.史玉良,王相伟,梁波,等.基于MongoDB的前置通信平台大数据存储机制 J.电网技术,2015(11):3176-3181.12 LIN Z Y,LAI Y X,LIN C,et al.Research on cloud databases J.Journal of Software,2012,34(5):1148-1166.林子雨,赖永炫,林琛,等.云数据库研究 J.软件学报,2012,34(5):1148-1166.13 ZHAO R Y,YE Q,ZHOU W T,et al.Cloud-stored image thumbnail-preserving encryptionJ.Cloud-stored Image Thumbnail-Preserving Encryption,2023,28(3):645-665.赵若宇,叶茜,周文韬,等.云存储图像缩略图保持的加密研究进展J.中国图象图形学报,2023,28(3):645-665.14 ZHOU B W,GU C X,LIANG J R.Design of intelligent energy consumption monitoring system based on WeChat appletJ.Wuxian Hulian,2020,17(3):37-39.周博文,顾晨曦,梁倩茹.基于微信小程序框架的智能能耗监测系统设计 J.无线互联科技,2020,17(3):37-39.15 ZHU Y Q,MA J Y,FAN C L.The digitization of physical exhibitions of libraries from the perspective of digital humanities:taking the framework of WeChat applet including jspwiki as an exampleJ.Library Science Research&Work,2022(9):33-37.朱玉强,马继业,范翠丽.数字人文视域下图书馆实体展览数字化推广实践 以搭建微信小程序框架下JSPWiki等为例 J.数字人文视域下图书馆实体展览数字化推广实践 以搭建微信小程序框架下JSPWiki等为例,2022(9):33-37.16 WEERD I,BRINKKEMPER S,SOUER J,et al.A situational implementation method for Web-based content management system applications:method engineering and validation in practiceJ.Software Process Improvement and Practice,2006,11(5):521-538.17 SHANG H.Research on application design of multilevel content management system D.Shanghai:Shanghai Jiaotong University,2017.尚昊.多级内容管理系统应用设计研究 D.上海:上海交通大学,2017.(责任编辑:刘嘉文)112

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开