“记忆帮”微信小程序的设计与开发*
2022-03-09陈宏样马秋宇李丽君黄琪文陈雯
陈宏样,马秋宇,李丽君,黄琪文,陈雯
(广西科技师范学院职业技术教育学院,广西 来宾 546199)
随着移动互联网的发展和信息技术的进步,微信小程序以其便捷、无需下载等优势深受广大用户的喜爱。微信小程序广泛应用于教学[1-3]、医疗[4]、购物[5-6]等方面。对于现代大学生而言,仅仅通过纸质介质获取知识的传统方式存在着许多弊端,无法满足学习者对于学习资源、学习场所和学习时间的新需求。传统的网站和APP 平台存在开发周期较长、开发和维护成本较高等问题,而基于微信的小程序的设计相对简单,主要涉及前端开发和后台管理[7],而且通过微信扫一扫关注后即可随时随地学习知识。本系统的设计开发主要是利用艾宾浩斯[8]的记忆遗忘曲线规律,帮助学生解决学习过程中容易遗忘的问题。
1 系统设计
1.1 运行环境
网站服务器端环境:Linux 操作系统、腾讯云服务器、LNMP 架构。
用户客户端环境:Android 或iOS 系统安装微信APP,Windows 10 安装微信3.1.0.67 或更新版本。
1.2 开发模型与设计方法
项目的需求较明确,因此使用传统的瀑布模型来开发,采用结构化的软件设计方法,自顶向下、逐步求精。将小程序的功能以模块划分,减少复杂性,提高系统的可靠性、可维护性。框架和组件大多采用微信原生,部分功能较复杂采用自行封装组件的方式。
1.3 所用技术
微信小程序:微信小程序是快应用的一种,是一种不需要下载和安装就可以使用的应用。主要涉及的相关技术包括JavaScript、WXML、WXSS。
腾讯云服务器:云服务器(Elastic Compute Service,ECS,又称云服务器或云主机)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。
LNMP 架构:通常指Linux 系统下Nginx+MySQL+PHP 网站服务器架构。Nginx 性能稳定、功能丰富、运维简单。Mysql 是一个小型关系型数据库管理系统,拥有成本低。PHP(Hypertext Preprocessor)为脚本语言,主要应用于Web 服务端开发。
腾讯云对象存储:本项目使用的对象存储(Cloud Object Storage,COS)是腾讯云提供的一种存储海量文件的分布式存储服务,具有高扩展性、低成本、可靠安全等优点。
2 实现功能
记忆帮微信小程序主要功能模块包括学习页面、添加页面、个人页面。系统层次图如图1 所示。
图1 系统层次图
2.1 学习页面
学习卡片:用户选择要学习的牌组(课件)后即可开始学习和复习该牌组内的卡片,卡片可以包含一个知识点或是一道题。
修改卡片:用户可以对卡片的内容进行修改,如增加注释等。
设置牌组参数:可以修改牌组的名称、封面图片以及该牌组每日学习的新卡片数量、复习的数量等。
2.2 添加页面
创建牌组:用户可以手动创建新的牌组,指定牌组的名称、封面图片、每日学习数量等。
创建卡片:为指定的牌组增加新的卡片。
2.3 我的页面
查看统计信息:我的页面中会展示用户的学习情况统计,包括已学习和待复习数量以及当日学习时长等。
意见反馈:可以提交意见和反馈,例如程序异常闪退等。
联系我们:调用客服API,与微信客服对话。
2.4 程序运行界面
登录系统后首先进入小程序首页,如图2 所示。设置牌组参数后创建属于自己的牌组,如图3 所示。经过一段时间学习后,可以在个人页面了解自己的学习情况,如图4 所示。
图2 小程序首页
图3 牌组创建页面
图4 个人页面
3 系统特点
记忆帮小程序适用于大部分有记忆知识需求的用户,尤其是学生群体。通过算法帮助用户精确划分学习内容,制定科学高效的学习计划和复习周期。用户可以把要记忆的知识点拆分成问题和解析两部分,类似卡片的正反两面;将同类卡片的集合称为一个牌组,类似日常学习使用的课件。以牌组为单位,将要学习和记忆的内容进行分类。本项目顺应了快应用飞速发展的时代背景,基于微信庞大的用户群体,具有开发和推广成本低、跨平台等优势。
4 系统测试
4.1 登录页面
登录小程序后可选择相关学科进入学习,点击开始学习,即可进入相关知识的学习,登录界面如图5所示,核心代码如下:
图5 登录界面
4.2 学习页面
该模块主要是进入学习页面,学习页面将显示详细的学习内容,可以是知识点的学习也可以是做题。通过卡片的正反面设置题目与答案,方便学习者记忆。学习界面如图6 所示,核心代码如下:
图6 学习界面
4.3 添加页面
该模块主要是通过添加卡片来增加学习内容,对较难记忆或难以理解的知识点进行整理归纳。界面如图7 所示,核心代码如下:
图7 添加界面
4.4 个人页面
该模块主要是记录个人的学习成果,帮助学习者查漏补缺,记录学习过程,核心代码如下:
5 结束语
本系统初步实现了将内容按照记忆遗忘曲线的规律推送给用户复习的目的,基于微信小程序平台,能够提高便利性,方便用户的使用。通过共享牌组的学习进度和正确率进行打分排名,有助于提高用户的学习兴趣和积极性,产生竞争的氛围,使得大量用户能够积极参与到同一项学习任务中,这一功能尤其适用于教师和学生群体间的关系。本系统帮助用户避免对内容标记复习时间的烦琐操作,并极大减少环境的制约,使复习和学习变得更自由高效。