基于微信小程序开发的在线答题系统
摘要:随着时代的发展,大学生的时间越来越匆忙。很多时候无法抽出大量时间去集中学习,如今的碎片化时间越来越多,若不加以利用,大学生的时间将会被浪费很多。为了充分利用大学生的时间,且可以将这些时间花费到学习上,为此我们小组根据该构思设计了一款答题的微信小程序,里面设计了五套题目,题库可以不断地扩充,方便大学生在碎片化的时间中也可以学习。
关键词:碎片化时间;答题;微信小程序;大学生
目录
该项目受众对象是大学生,对于大部分大学生来说,他们的碎片化时间非常多,碎片化时间就是指很多零用的时间。碎片化时间由于小而多,无法充分利用,我们开发此小程序的目的就是帮助大学生充分利用碎片化时间进行学习,节省出更多的时间解决其它事情,不需要额外花更多的大块时间去解决这些问题,形成良性循环。
实际问题:该项目含有较多套试题,试题可以在数据集中丰富起来,以适用于各个专业的大学生。试题中含有单项选择题和多项选择题等,学生们在碎片化时间中可以完成不少题目进行学习,强化知识点记忆。学生们可以记录笔记以便之后可以想起自己做了什么。学生们可以收藏和评论题目,也可以对答案提出质疑,其它用户可以解答或者联系我们进行解答。
****功能需求:****学生们的主要功能需求是答题、题库、成绩、收藏和评论等功能,这也是我们开发的核心内容。

1-1 微信小程序开发

1-2 微信小程序-答题-功能

2-1 代码模块
该文件夹用于存放各种页面,如home、logs、mine和test等页面,用于方便管理各个页面,以及页面之间的联系、跳转等。每个页面包含四个文件,分别是.js、.json、.wxml和wxss,.js的作用是给页面添加动作逻辑,让页面可以动态起来,执行动态命令;.json的作用是给标题头命名等;.wxml的作用是给页面添加内容;.wxss的作用则是改变页面的样式,包括颜色、排版和大小等。
文件夹下面的页面:

页面下的四个文件:

image文件夹里面含有涉及到各个页面含有的图片,包括各种图片,放在该文件夹下方便管理,这是其中的一种存储图片的方法,在页面中也可以使用图片链接来代表图片。
展示部分图片:

该文件夹下面存放着.json格式的数据集,该数据集也可以拆分建立起一个数据库,利用云开发与前端进行交互,传送数据。
data文件夹:

json文件内容部分展示:

硬件配置:W indows,英伟达MX250,8.00GB
操作系统:Windows/x64位操作系统
开发语言:javascript/1.8
开发工具:微信开发者工具/1.05

https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html,选择对应的windows版本


这一页是许可协议,同意,我接受

在这一步选择要安装的位置

前边的设置完成后,在这一步就开始释放文件进行安装了,耐心等待

安装完成后,就会给出安装完成的提示信息


在这里需要使用微信扫一扫才能正常使用

答题小程序分了两个模块,“答题”和“我的”。
“答题”:
该界面含有五套试题,用户可以根据需求选择自己所需要的试题。


这是刚进去的界面,为多选题,用户需要选择答案进入下一题,如不想答题,可点击右下角退出答题。

以此类推,共计十道题目,回答完之后会提示得分以及答错的题目:

该界面会显示自己的答案和正确答案,

看完之后可以选择再来一次和返回首页。
以此类推,共计五套试题,操作同上。
“我的”界面:

分了五个模块,“获取头像昵称”、“我的成绩”、“我的收藏”、“我的评论”和“我的设置”。
可以实时获取用户的头像和昵称,实图如下:

我的成绩模块记录了每一次的答题记录,含时间、试题名字和得分,点击该模块即可跳转,实图如下:

在该界面中可以存放用户收藏的试题,并将数据返回数据库,专门存放收藏的试题,取消收藏试题之后,该界面也将不展示该试题,并反馈给数据库,让数据库删除收藏试题。
实图如下:

该界面主要是为了存放他人的评论,如对试题的评价,或者是对答案正确与否的反馈。评论内容可产生较大的数据量以及访问量。
该页面中有密码修改;手机修改,即修改手机号;下一个就是关于我们,可以通过这个联系开发者,可以询问问题或者提供一些改进建议;最后一个就是清除缓存,就是清除一些占用内容但是可以通过网络重新加载回来的数据。
实图如下:

以上就是整体答题小程序的介绍,题目可以修改数据库或者添加,在data.js文件可以完成修改。基础功能完善,核心答题功能已实现。和小组共同开发该小程序,我的组织协调能力增强了,并且可以独立开发微信小程序了,前端+云开发会比使用java等做的后端使用方便些。
我们项目成员共有三个人,分别是19060517121邹闽路(负责人),19060517120朱恒延,19060518104樊鑫,分工合作,邹闽路负责前端页面和后端系统架构设计并完成部分核心代码,朱恒延负责代码完善,页面添加,测试代码和功能小程序等工作,樊鑫则负责数据库设计以及数据收集修改等工作,并了解一定的前端页面和后端架构,方便连接工作。
该项目将数据库整合在了前端,当然,也可以将数据写回数据库,利用JAVA后端或者微信小程序提供的云开发平台进行交互,融合转换实现较容易,修改部分代码再连接数据库和后端即可。
在开发过程中,我发现云开发有非常多的便捷之处,你不需要自行连接后端和数据库,只需要在.js页面写交互代码即可,数据就可以在前后端相互传送,微信小程序也对应地给出了对应云开发平台。云开发也有缺陷,比如安全性,容易产生数据泄露等,不过在对于我们这种非上线的小项目来说,可以忽略这个问题,如果考虑上线,还是比较建议JAVA后端,毕竟JAVA也比较成熟了,云开发平台不过才发展了几年时间,目前还无法追赶上JAVA专门做后端的平台。
开发过程中参考了很多资料以及自学了较多东西,对自己产生了很大的帮助。开发过程中加强了思考能力以及创新能力,这些能力在参加互联网+比赛和大学生创新创业项目中有非常大的帮助,我也参加了较多的省级项目,从中吸取了很多经验,比如如何分配任务,如何开发并且执行下去,以及如何编写优秀的软件设计文档,在借鉴的同时,也加强了这些能力。
https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
https://youzan.github.io/vant-weapp/#/home
https://github.com/
https://gitee.com/
https://blog.csdn.net/valada/article/details/80892569?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163833417616780357211679%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=163833417616780357211679&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_positive~default-2-80892569.first_rank_v2_pc_rank_v29&utm_term=%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%BC%80%E5%8F%91&spm=1018.2226.3001.4187
3.130102334…%2522%257D&request_id=163833417616780357211679&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_positive~default-2-80892569.first_rank_v2_pc_rank_v29&utm_term=%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%BC%80%E5%8F%91&spm=1018.2226.3001.4187
我正在编写一个包含C扩展的gem。通常当我写一个gem时,我会遵循TDD的过程,我会写一个失败的规范,然后处理代码直到它通过,等等......在“ext/mygem/mygem.c”中我的C扩展和在gemspec的“扩展”中配置的有效extconf.rb,如何运行我的规范并仍然加载我的C扩展?当我更改C代码时,我需要采取哪些步骤来重新编译代码?这可能是个愚蠢的问题,但是从我的gem的开发源代码树中输入“bundleinstall”不会构建任何native扩展。当我手动运行rubyext/mygem/extconf.rb时,我确实得到了一个Makefile(在整个项目的根目录中),然后当
我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm
我们的git存储库中目前有一个Gemfile。但是,有一个gem我只在我的环境中本地使用(我的团队不使用它)。为了使用它,我必须将它添加到我们的Gemfile中,但每次我checkout到我们的master/dev主分支时,由于与跟踪的gemfile冲突,我必须删除它。我想要的是类似Gemfile.local的东西,它将继承从Gemfile导入的gems,但也允许在那里导入新的gems以供使用只有我的机器。此文件将在.gitignore中被忽略。这可能吗? 最佳答案 设置BUNDLE_GEMFILE环境变量:BUNDLE_GEMFI
这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub
我正在玩HTML5视频并且在ERB中有以下片段:mp4视频从在我的开发环境中运行的服务器很好地流式传输到chrome。然而firefox显示带有海报图像的视频播放器,但带有一个大X。问题似乎是mongrel不确定ogv扩展的mime类型,并且只返回text/plain,如curl所示:$curl-Ihttp://0.0.0.0:3000/pr6.ogvHTTP/1.1200OKConnection:closeDate:Mon,19Apr201012:33:50GMTLast-Modified:Sun,18Apr201012:46:07GMTContent-Type:text/plain
无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD
导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵
电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。 准备工作: 1、U盘一个(尽量使用8G以上的U盘)。 2、一台正常联网可使用的电脑。 3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。 4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。 U盘启动盘制作步骤: 注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.