一款属于自己的小程序

今天介绍下自己做的一款小程序「冲顶课堂」,从0到1自己完成的一款小程序。
这是一款答题类的小程序,主要考察的是小学初中语文的一些知识,用户答题每次答完计算分值,统计排行榜,同时记录错题,并对题目进行纠错。

先上几张效果图,忽略粗糙的界面…

注‘Android技术交流群878873098,欢迎大家加入交流,畅谈!本群有免费学习资料视频’并且免费分享源码解析视频

一款属于自己的小程序_第1张图片
image
一款属于自己的小程序_第2张图片
image
一款属于自己的小程序_第3张图片
image

背景介绍

自己本身是做android开发的,这几年移动端慢慢成了「夕阳行业」,不再是那么火热,沉淀下来了,相对的小程序慢慢火起来了,毕竟是微信的亲儿子。趁着这波浪潮,自己也学习了一波,相对上手还是比较容易的,加上之前自己做网站,写过接口,本着学以致用的原则,将这些「技能」 灵活运用,做一个完整的小程序。

后台数据

如果是自己出题目,那基本不可能的,如果要一条条的到网上复制粘贴,这个工作量也是可想而知的,这里就要用到python 爬虫的技巧了。爬取的网站需要用户登录,这里使用selenium来模拟登录,爬取时通过加载Chrome配置来免登录。

driverOptions = webdriver.ChromeOptions()
driverOptions.add_argument(r"C:\Users\Administrator\AppData\Local\Google\Chrome\User Data")
driver = webdriver.Chrome("chromedriver", 0, driverOptions)

image.gif

页面解析,采用的BeautifulSoup,先把数据统一保存到excel文档,后续写个脚本写入到数据库。页面解析这块 之前有做过相关爬虫的文章,这里就不详细描述了。

由于题目众多,小学的大概400多道,初中的1000道,自己没法一一测试,所以里面有纠错的功能,便于后续维护的。

后台用的django自带的后台,接口用的django rest framework,写起来也比较方便快捷。 比较麻烦的算是数据库设计的,当然我这里的数据结构算简单的,没什么复杂性,表关联下的就可以了。用户id 就是小程序提供的openId,跟其他表加以关联使用。

小程序

小程序相关的方面的直接参考的官方文档的,相关api还是很齐全的,布局采用的flex 布局,加上css样式的,总体是简单的,后期会对应增加些卡通元素的,毕竟有面向小学的。

小程序里面有个登录授权的需要注意的,wx.getUserInfo直接调用不再出现授权弹框,而需要 用户主动授权获取用户信息的。这就意味着 用户直接打开小程序不再出现授权弹框,而需要用户通过按钮点击主动去授权。

另外小程序有一套自己的WXS 的脚本语言,一般渲染数据是直接通过setData 来渲染,如果遇到一些数据需要前端自己处理再显示的,就可以使用WXS 来处理,避免使用js 去处理再去setData的,类似过滤器的感觉。当然WXS 也有注意事项的,官网也有这块的介绍 WXS。

一点感想

做这样一款小程序,一是把自己学习的关于前后端的知识灵活运用起来,二是后续公司会让移动端的接手些小程序,自己也算提前练个手的。
相对的做一款app时间周期比较长,而且要考虑到双端,小程序的开发成本相对就低了。当然这款小程序是自己从0到1的开始 ,后续再慢慢优化的!

注‘Android技术交流群878873098,欢迎大家加入交流,畅谈!本群有免费学习资料视频’并且免费分享源码解析视频

你可能感兴趣的:(一款属于自己的小程序)