1.应用场景与解决问题
调查研究表明,当前高校学生在课后习题上所花的时间主要集中在思考以及查阅相关资料上。尽管这两不是必不可少的,但是查询相关资料所用的时间往往占有重大比重,所以如何有效的缩减资料查询时间,是本程序解决的问题。因此,答案sou小程序的使用场景也显而易见:该小程序针对的是高校学生,在大学生解决课后习题时,想要查看习题的相关题解可以通过该小程序实现。最便捷的方法是用户通过程序扫描图书背后的条形码,获取图书题解信息,用户之后可以通过对应的章节获取用户所需的题解信息。当然上述方法只是方法之一,用户同样可以通过书籍分类、书籍搜索查找。课后习题的查找只是应用场景之一,该小程序同样适用于考研学生或者等级考试。考研学生或者等级考试学生可以在该系统上获取历年的考研真题、英语四六级等级考试真题及其解析。
2.目标用户
答案sou是一款用于解决大学生搜索答案困难而诞生的小程序。
3.实现思路
该系统的实现通过前端微信小程序以及配合云开发技术实现整个系统架构。前端小程序界面的构建部分使用了目前比较流行的小程序前端ui框架—Vant Weapp,vant ui封装了许多美观,可靠的组件,除了借用vant ui之外,系统自身也封装了许多可以复用的自定义组件。微信小程序云开发使得在小程序端可以直接操作云端的数据库,当然这有查询条目的限制,但这种限制可以通过云函数突破。该系统创建了许多云函数与用户的操作相对应。用户相应的操作会调用相关的云函数,通过云函数实现对云数据库,云存储进行操作。通过小程序以及云开发技术的实现大大降低了开发整个系统的周期。整个项目的难点在于数据的收集。该系统的所有数据通过python scrapy框架爬取而得,并通过相关的处理函数对爬取而得的数据进行一定的格式处理,使得数据成为符合系统要求的数据。之后将所有有效的数据上传至小程序云中。至此便可操控数据库,对云文件可以根据云id进行相关操作。资源的爬取是耗时耗力的,其中还要处理各种异常。
4.运行效果图
5.功能代码展示
//获取热门书籍
async getHotBook () {
const {
data: data
} = await db.collection('hotBook').field({
id:true,
isbn:true,
name:true,
author:true,
cover:true,
view_num:true,
publisher:true,
}).orderBy('view_num','desc').get()
return data
},
6.作品体验