基于微信小程序的读书分享会的设计与实现毕业论文
2020-02-19 18:15:54
摘 要
从古至今,阅读都是人们获取信息的一个重要途径。随着科技的不断发展,传统读书的方式在一次次被颠覆,数字化阅读已经与个人生活密不可分。而阅读可以说从来不是一个人的事,更多人渴望的是内心情感的交流。因此,分享式的读书逐渐成为了一种基于基于共同兴趣爱好的社交方式,是一种充满了思想上的交流与碰撞,更有质量也更愿意为人所接纳的社交方式。
基于微信小程序的读书分享会,是将分享式读书与微信小程序相结合的阅读社交系统。微信在当今社会是一个极为火热且广阔的社交新媒体平台,其用户量和商户量稳居中国社交平台前列,其传播能力毋庸置疑。而微信小程序就是基于这样一个平台所衍生出来的轻量级应用,触手可及,即用即走。用户在微信小程序上使用读书分享会,避免了需要下载手机应用的繁琐,可以轻松快速的实现阅读的渴望以及分享的快感。该系统提供给读者两种搜索图书的方式,即书名搜索和标签搜索,相对于社交的设计,标签是略带私人化的服务,每个读者都可以为图书设置标签,方便检索。同时,为了体现分享,本系统还提供想法的撰写以及读书小组的功能,可以为读者打造独一无二的社交体验。
对于该系统的实现,本文所采用的是C/S架构:在客户端这一方面的开发,主要采用了微信小程序的开发技术; 而对于服务器的后端开发,则是使用Spring Boot框架加上MySQL数据库作为支持。在开发过程中,需要调用微信小程序所提供的第三方工具,而前后台的信息交互,则采用了Json格式进行数据传输。
关键词:微信小程序,读书,分享式阅读
Abstract
Reading has been an important way for people to obtain information since ancient times. With the continuous development of science and technology, the traditional way of reading has been subverted again and again, and digital reading has become inseparable from personal life. Reading can be said to be never a person's business. More people are eager for the communication of inner feelings. Therefore, shared reading has gradually become a social way based on common interests and hobbies. It is a social way full of ideological communication and collision, more quality and more willing to accept.
The Mini Program-based sharing reading implemented by this system is a reading social system that combines shared reading with Mini Program. WeChat is an extremely hot and broad new social media platform in today's society. Its user volume and merchant volume are at the forefront of China's social platform, and its communication capability is beyond doubt. The Mini Program is a lightweight application based on such a platform, accessible at your fingertips. Users use the book sharing session on the Mini Program, which avoids the cumbersome need to download the mobile phone application, and can easily and quickly realize the desire to read and the pleasure of sharing. The system provides readers with two ways to search for books, namely title search and tag search. Compared to social design, the label is a slightly personalized service, and each reader can set a label for the book to facilitate retrieval. At the same time, in order to reflect sharing, the system also provides the writing of ideas and the functions of the reading group, which can create a unique social experience for readers.
The implementation of this system adopts C/S architecture. For the development of client, the development technology of WeChat applet is mainly adopted. For the back-end development of server, the Spring Boot framework plus MySQL database is used as support. In the development process, you need to call the third-party tools provided by the WeChat applet, and the information exchange between the front and the back is in Json format for data transmission.
Key Words:Mini Program;reading;shared reading
目录
第1章 绪论 1
1.1 项目背景及意义 1
1.2 国内外发展现状 1
1.3 本文主要研究内容 2
1.4 论文结构 3
第2章 相关理论和技术分析 4
2.1 微信小程序 4
2.1.1 微信小程序开发环境 4
2.1.2 微信小程序框架 4
2.1.3 微信小程序API 5
2.2 Spring Boot 6
2.2.1 Spring Boot特点 6
2.2.2 Spring Boot项目搭建 6
2.2.3 Spring Boot核心注解 7
2.3 MyBatis 7
2.4 爬虫框架Scarpy 7
2.5 本章小结 7
第3章 需求分析与设计 8
3.1 需求分析 8
3.1.1 可行性分析 8
3.1.2 系统功能需求分析 9
3.1.3 系统性能分析 11
3.2 系统总体设计 12
3.2.1 系统层次设计 12
3.2.2 系统数据流图设计 12
3.3 数据库设计 15
3.3.1 数据库实体关系类图 15
3.3.2 数据库主要表结构设计 16
3.4 系统接口设计 19
3.5 系统界面设计 20
3.6 本章小结 20
第4章 系统实现与测试 21
4.1 项目文件架构 21
4.2 系统实现 22
4.2.1 图书检索 22
4.2.2 书籍浏览 25
4.2.3 个人书架 28
4.2.4 历史记录 29
4.2.5 想法与评论 31
4.2.6 读书小组 34
4.3 系统测试 38
4.3.1 检索功能测试 38
4.3.2 阅读功能测试 39
4.3.3 创建想法测试 40
4.3.4 评论想法测试 42
4.3.5 任务讨论测试 43
4.4 本章小结 44
第5章 总结与展望 45
5.1 总结 45
5.2 展望 45
参考文献 46
致谢 47
绪论
项目背景及意义
时至今日,现代互联网技术迅猛发展,信息技术得到了空前的提升,人们不再局限于纸质化的阅读,移动阅读日渐成为阅读的一个趋势。现代的科技提升也使得人们生活的节奏日益加快,人们能够接受新事物与新信息的时间也越来越碎片化,在一天的时间中,往往很少有时间能够让人静下心来去捧着书籍阅读。因此,移动阅读就因运而生了,不以纸张为载体的电子书刊,可以充分的满足人们利用碎片化的时间获取知识的需求,能够让人们在零碎的时间里填充自己的情感[1]。
随着互联网的发展,人与人之间的距离被拉近,阅读的“孤独感”被打破,阅读的方式逐渐由自我转向交流式阅读。人们在生活质量的提高的同时,在精神上的需求也成为了需要强调的一部分,因此以图书为基准的社交开始被提出,并迅速得到了人们的拥护。人们习惯于在书籍中寄托认知与情感,此时出现具有共同感知的他人就很容易产生心灵的共鸣,并希望就此交流下去。通过书籍建立社交关系,对书籍的内容进行互动,并在此过程中感到乐趣、产生愉悦,这就成为了读书社交不可替代的内在需求[2]。
针对读书社交的需求,本文提出了一种基于微信小程序的读书分享会系统。使用本系统的读者,可以充分享受到读书社交的乐趣。本系统为读者用户提供了两种社交互动,其一即想法感悟,在阅读书籍的同时,写下感悟是一件既平常有独到行为,本系统会将读者愿意公开的想法作为热点进行推送,让读者在敝扫自珍之外,能够获得分享的喜悦,让阅读它的读者产生共鸣,促进社交的产生。其二,本系统为读者们提供读书小组的功能,为志同道合的读者们提供一片绿荫,让其在同一片屋檐下交流读书的心得体会,针对一本书或一类书进行交流。
与目前市面上其他阅读类APP不同,本系统是基于微信小程序来进行应用开发的。微信作为当今国内用户流量稳居前列的平台,在其基础上开发的小程序可以很好地利用这一优点,庞大的用户基数能够让社交更进一步。同时,微信小程序在用户授权的情况下,可以拉取微信用户的好友列表,可以让用户更容易关注好友的读书动态,进而提升阅读的互动性。
国内外发展现状
微信小程序是一种全新的连接用户与服务的方式,它基于微信这个平台环境所成,因此可以被便捷地获取和传播,同时具有良好的使用体验[3]。在APP软件日益冗杂、良莠不齐的现代,如何使用户不感受到系统缓慢、沉重,获得清爽的体验感,就成了一个新的需求。而微信小程序正是基于此处开发出来的,其定位在于“无需安装,即用即走”[4]。从用户的角度来看,他并不在意商家对网页、APP的投入是多少,他在意的只有自己使用消耗了多少成本,因此小程序存在的主要目的就是为用户减负。
自2017年开始,微信便新增了一项新功能——微信小程序,与市面上早已存在的支付宝小程序所不同的是,微信小程序对开发者们提供了小程序的开发权限。这就使得第三方平台也能够参与小程序的研发与发布,这极大程度上促进了小程序的发展。微信庞大的用户流量加上小程序的便捷免安装,用户对其的青睐程度日益提高,很快许多商家将目光投入此处。
而在移动阅读领域,近几年人们的阅读手段也逐渐丰富起来,手机、kendle、PAD等移动设备在民众中日渐普及,各种阅读软件开始占据细分内容平台,进一步拓展了阅读市场。除此以外,不少传统的媒体行业开始向移动媒体进行融合转型,新媒体随着技术的革新,功能日益强大、趋向健全,驱动着许多传统媒体开始转战自媒体来生产内容,推动着移动阅读的产业化发展。
在此背景下,一些优秀的阅读软件逐渐为人们所认可、推崇,例如微信读书、网易云阅读等读书APP。这些阅读应用不仅仅是承担着阅读器的作用,更多的是有着专门的团队来为其进行内容创作,同时也向读者们提供谈论模块,为那些具有共同主张、等同趣味的读者建立情感关联,为其提供社交化的阅读平台,使得他们在阅读的过程中得以分享自己的感想,与具有着相同爱好的人进行沟通交流,从而获得精神上的满足[4]。
虽然移动阅读在手机应用领域得到了飞速发展,但是微信小程序在这一板块的支持还稍显薄弱。小程序让阅读更具交互性,相比传统应用更能加速优质内容传播,适合用户在移动互联网环境下利用碎片化的时间进行阅读[5]。所以,本系统为了补足移动阅读在微信小程序上的缺失,提出了这款基于微信小程序的读书分享会。与目前存在的读书类小程序相比,本系统在读书社交方面提供了较多支持,用于帮助相同志趣的读者分享自己所得所悟,获得精神上的愉悦感。
本文主要研究内容
本文所研究的是基于微信小程序的读书分享会的设计与实现,在研究过程中以瀑布模型为理论基础,遵循其开发过程来完成对本系统的设计与实现。本系统以微信小程序官方设计指南为基准,在小程序的UI设计时,依据友好礼貌、清晰明确、便捷优雅等规范进行视觉设计。
在功能方面,本系统提供最为基础的书籍搜索、浏览功能,同时向读者提供一个具有个性化的标签功能,允许读者为书籍添加一个短标签,来简明扼要的描述书籍的特征,同时也可以根据标签来搜索书籍。
在社交性方面,为读者提供了想法推送与读书小组两个模块。在阅读书籍后,读者可以自由地书写自己的想法,在选择公开后,自己的想法即会被推送,允许其他读者阅读并评论。在读书小组中,读者可以遇到一群志同道合的伙伴,读者在组内可以发布阅读任务,也可以针对一本书或一类书籍展开讨论。
本系统前端采用微信小程序的开发工具,采用wxml、wxss和JavaScript进行小程序的开发;而后台采用java语音的Spring Boot框架工具,并结合MySQL数据库进行数据的存储;对于图书数据,则使用python的spider框架对豆瓣图书进行信息爬取,在处理后存入数据库中。
论文结构
本文主要介绍了基于微信小程序的读书分享会的设计与开发,本文主要由五个章节构成,如下:
第一章为绪论。本章节介绍了本系统的项目背景及开发意义,并结合国内外发展现状分析系统的功能需求,并介绍了本文主要的研究目标。
第二章为相关理论和技术分析。本章节介绍了在设计与实现本系统的过程中所涉及到的一系列开发技术框架。本章节介绍了微信小程序前端框架,后端的Spring Boot框架并整合MyBatis,同时简要说明如何利用Python的Scrapy框架爬取图书信息。
第三章为需求分析与设计。本章节对读书分享会的系统实现进行需求分析,并对整个系统进行设计,包括总体设计、数据库设计、功能设计以及界面设计。
第四章为系统的实现与测试:本章节对系统已完成功能进行简要描述,并给出该功能模块的测试结果说明。
第五章为总结与展望。本章节对系统实现工作进行了概述,对整个系统在设计与实现过程中所用知识进行归纳整理,并简要说明开发难点。最后,在展望中说明自己对本系统的更高期望,以及本系统的后续可改进之处。
相关理论和技术分析
微信小程序
微信小程序是一种基于微信生态环境而开发的服务式应用,因此无需下载安装即可使用,它在很大程度缩短了应用与用户的距离,用户只需要通过微信扫一扫即可打开应用。小程序体现了“用完即走”的理念,用户不用过多担心应用对于手机内存空间的损耗问题。简而言之,小程序就是这么一种触手可及、随时可用、无需安装的应用[6]。
微信小程序开发环境
在着手开发小程序之前,我们需要拥有一个小程序账号,只有通过这个账号才能够管理小程序。进入到小程序注册页后,输入注册邮箱及密码,在邮箱成功验证后,即可进入用户信息登记。在该页面中,需要开发者选择所注册微信公众帐号主体类型,针对不同性质的主体类型,登记信息有不同的需求。
主体选择之后,需要填入注册者的身份证、手机号以及验证信息,保证用户依法享有本微信公众号所产生的权利和收益,并对该公众号的所有行为承担全部责任,同时有权机关可向腾讯依法调取你的登记信息。
在开发账号注册成功之后,开发者需要登陆微信公众平台并管理账号下的小程序。对于每一款小程序,都需要完善其相关信息,即为将要开发小程序填写名称、头像、简介等信息,以及添加必不可少的开发者信息。当然,每个小程序都需要选择开发类型,并与开发者微信进行绑定。至此,小程序的配置基本完成。
小程序开发配置结束之后,开发者可以拿到该小程序专属的APPID以及登陆密码。接下来就进入到开发环节。开发者需要在官网上下载对应系统的开发者工具,下载完成后,使用微信扫码进入。并使用拿到的APPID来创建一个新的小程序项目[7]。
在项目代码全部编写完成后,就可以进行小程序的发布。在初次代码提交并审核通过之后,管理者便可以随时发布自己的小程序。
微信小程序框架
微信小程序是一个底层采用WebView来实现的的MINA框架,因此与传统的网页设计很是相近。该框架由View视图层、App Service逻辑层两部分所构成。其中,View层的作用是对页面结构进行渲染工作;App Service逻辑层是MINA的服务中心,由微信客户端启用,分别激活异步线程。页面呈现和页面交互处理逻辑所需的数据在AppService中实现[8]。视图层和逻辑层通过Native来进行信息的交互,在此过程中,逻辑层把数据变化发送到视图层,使得视图层页面再次渲染;视图层把用户触发的事件告知逻辑层,在逻辑层中对事件进行处理。
微信小程序的逻辑层主要使用JavaScript进行编写,并采用JsCore线程来运行,将处理后的数据发送到视图层,与视图层进行数据交互,再通过视图层使用数据进行渲染,最后展现在用户眼前。
微信小程序的视图层由结构与样式组成,页面结构以WXML文件编写,页面样式由WXSS文件所决定。小程序将逻辑层的数据反应成视图,同时将视图层触发的事件发送给逻辑层。WXML是微信小程序设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构,其主要的功能包括数据绑定、列表渲染、条件渲染等。WXSS则是与其配套的样式语言,用于描述 WXML 的组件样式。WXSS 具有 CSS 大部分特性。同时为了更适合开发微信小程序,WXSS 拓展了两大特性,即设计了新的尺寸单位以及提供了一种新的样式导入方式。
微信小程序API
对于本系统的开发,借助一些微信小程序官方提供的API来提供更好的性能。一些比较重要的API如下:
- 网络请求
wx.request接口,本接口主要用于对网络请求进行处理,是前后端数据的交互的中枢环节。在调用该接口时,需要开发者填写的参数有:开发者服务器的接口地址、请求参数、请求方法,最后还需要设置回调函数来处理接口请求成功后对返回数据的操作。
- 文件上传
wx. uploadFile接口,本接口用于将本地资源上传到服务器,在本系统中,主要用于读书小组图片的上传。本接口需要填写服务器地址、要上传文件的路径以及该文件对应的名称,开发者在服务端可以通过这个名称获取文件的内容。
- 消息提示框
wx.showToast接口,本接口用于进行消息的提示,让用户在操作时得到即时的反馈。小程序提供的消息弹出接口,可以自定义提示内容、延迟时间以及透明蒙层效果,并与其他接口一样,需要时可以编写回调函数来处理请求。
- 模态对话框
wx.showModal接口,本接口用于对用户操作进行再次确定,让用户在确定某些较为重要的事件时有反悔的空间。模态对话框就是拥有确定与取消按钮的消息框,开发者需要判断用户点击按钮的状态,并为其分别编写函数来处理事件。
- 用户授权
wx.authorize接口,本接口用于对用户进行授权操作的确定。在调用授权接口后,小程序会向用户弹窗发起授权请求,询问用户是否授权小程序使用某项功能。如果用户已经确认过授权,那么小程序则不会弹窗。对于授权内容,开发者可以在scope中确定[9]。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: