智能图书借阅平台的设计与实现

2018-01-04 10:59汪楷廖庆涵何泽鹏吕晴阳
电脑知识与技术 2018年28期
关键词:图书馆

汪楷 廖庆涵 何泽鹏 吕晴阳

摘要:在信息大爆炸的今天,人们的阅读习惯逐渐发生了改变,阅读的大部分时间都被微博、微信、新闻App等手机软件所占用,能在图书馆借阅一本书慢慢品读显得弥足珍贵。而图书馆书籍种类多、借阅流程复杂,读者需要耗费较长的时间来找到一本自己想要的书,这些问题给读者带来了极大的不便,设计一个智能图书借阅平台正好解决了这个难题。该系统以.NET为开发平台、SQL Server作为数据库,实现了书籍搜索、借阅书籍、退还书籍、书籍预定、图书推荐、到期提醒等功能。经测试,该平台简化了图书借阅流程、为读者带来更为贴心的借阅体验。

关键词:图书馆;智能借阅;借阅平台;智能图书;图书推荐

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)28-0069-03

Design and Implementation of Smart Lending Platform

WANG Kai, LIAO Qing-han, HE Ze-peng, LV Qing-yang

(Wuhan University of Science and Technology, Wuhan 430065, China)

Abstract: In today's big information explosion, people's reading habits have gradually changed. Most of the time of reading has been occupied by mobile phone software such as Weibo, WeChat, news App, etc., and they can borrow a book in the library and slowly read it. Its precious. The library has many kinds of books, and the borrowing process is complicated. The readers need to spend a long time to find a book they want. These problems bring great inconvenience to the readers. Designing a smart book lending platform can solve the problem precisely. The system uses .NET as the development platform and SQL Server as the database, which realizes the functions of book search, borrowing books, returning books, book reservations, book recommendation, and expiration reminders. After testing, the platform simplifies the book lending process and provides readers with a more intimate lending experience.

Key words: library; smart lending; lending platform; smart books; book recommendation

1 背景

智能手機已经普及,人们早已习惯于每天使用手机来浏览资讯新闻,不管身在何处,都可以随时拿起手机来阅读信息,但实际上,人们每天都处于一种被各种短新闻“洗脑”的状态,这种长期处于略读、跳读的状态让人们的阅读理解能力弱化[1],加上图书馆需要办卡、充值、刷卡等流程才能进行借阅,这给想要借书阅读的人带来了极大的不便,也是现在纸质阅读低迷的原因之一,简化借阅流程对推动纸质化阅读、提高读者的阅读理解能力至关重要。

智能图书借阅平台能够简化书籍借阅的流程。从传统的图书馆的借阅方式来看,用户必须办理读者证,借书还书时必须携带,且借书必须亲自到图书馆寻找相关的书籍信息。而通过智能图书借阅平台,用户可直接在手机上进行书籍筛选、收藏、借阅等操作,无论在家还是在图书馆,都能在第一时间借阅或预约到自己喜欢的书籍。该平台加入推荐阅读、推荐书友等个性化功能,让用户不再只是枯燥的借阅,而是在大数据的支撑下快速找到自己喜欢的书籍,促进读者多进行纸质阅读,通过网络共享的方式,分享自己喜欢的书籍,推进全民阅读的目标,提升读者的内涵修养,这样既节省了读者借阅书籍的时间,也提高了图书馆书籍的借阅率。

2 智能图书借阅平台的设计

2.1 主要功能模块

2.1.1 图书检索

当用户需要搜索书籍时,可以通过搜索书名,关键词,首字母拼音,ISBN等信息进行检索。搜索结果中展示有书籍的缩图、标题、作者、可借副本、书籍评分等信息。搜索时,搜索栏将自动显示最近的搜索历史,点击历史搜索词即可直接跳转到相关搜索词的结果页面。

2.1.2 浏览书籍详情

在书籍详情页面,用户可以查看基本信息,如书籍的标题、出版社、封面、藏书地址、书籍简介、书籍目录、读者评价等。也可以收藏书籍,对书籍进行评论,对好的评论可以进行点赞,也可以将书籍加入自己创建的个人书单。点击加入预订栏按钮,可以开始预定书籍。点击扫码借阅按钮,开启扫一扫功能,用户扫描书籍的条形码即可开始进行借阅下单操作。

2.1.3 书籍评论

在书籍详情页面,用户可以查看其他用户对该书籍的评论,可以对评论进行点赞、回复等操作,热门的评论也会出现在年度神评栏目中。

2.1.4 智能书籍推荐

系统可以根据用户长期的借阅记录及一段时间的多次搜索习惯,定期为用户个性化推荐书籍。用户可以在个人中心的推荐频率功能区设置推荐频率,如果用户觉得困扰,可以设置为不推荐。

2.1.5 在线预订

当要预订的书籍在图书馆有馆藏副本时,用户可以在图书详情页面,点击加入借阅栏,并选择预约去图书馆取书的时间,完成微信支付押金操作后,该图书会被图书管理员预留保存,等待用户在预约时间前前往图书馆进行借阅确认操作,即可完成借书流程。

2.1.6 书籍借阅

用户通过扫码功能扫描书籍上的条形码,在图书信息页面确认后,即可将书籍加入借阅栏。在借阅栏页面,可以选择这次自己想要借阅的图书。提交借阅订单后,会自动发起微信支付,完成押金支付流程,用户会收到支付成功提醒,系统将生成借书确认二维码,并通过自定义加密算法生成密匙进行验证,二维码每分钟自动刷新,确保用户信息安全。图书管理员打开App扫码确认后,微信端会自动收到借阅成功提醒,借书流程结束。

2.1.7 书籍归还

当用户到图书馆找管理员还书时,打开订单页面,找到需要归还书籍的订单,点击二维码图标生成还书二维码,管理员扫码确认归还书籍无误后,点击确认归还,用户会自动收到还书成功提醒,并收到退款成功提醒。

2.2 系统结构设计

智能图书借阅平台由微信公众号端、管理员App端构成。微信公众号端为用户提供书籍浏览、借阅服务,管理员App端在用户借阅、归还书籍时及时进行扫码确认。系统结构设计图如图1所示。

2.3 数据库设计

智能图书借阅平台数据库一共31张数据表,基本表有用户表、书籍表、书籍条形码表、订单表等,整个数据库的字段结构精简,尽可能地降低了数据的冗余,通过表与表之间的外键连接,尽可能保证数据的一致性。数据库部分表的表结构设计如表1所示。

3 智能图书借阅平台的实现

3.1 采用的技术框架

智能图书借阅平台基于.NET编写,数据库采用SQL Server 2008进行管理,数据操作工具采用.NET Entity Framework进行实体映射,方便对数据进行增删改查操作,提高开发效率。该平台结合服务器的计划任务,每天夜间自动进行应用池垃圾回收,确保服务器时刻缓存最新数据,时刻处在热启动的状态。

3.2 业务逻辑的实现

智能图书借阅平台的业务逻辑较为复杂,每个功能模块尽量提取共有的抽象功能为基础,面向接口编程,降低数据层与逻辑层之间的耦合度,使用恰当的软件设计模式实现程序的复用,为软件后期的更新维护工作打好基础[2]。例如,在很多情况下,需要给用户发送消息模板,如用户支付成功后、预约成功后、还书成功后都需要给用户发送消息提醒,所以该平台专门实现了SendWechat类,将10个消息模板的ID编写成类的Static变量,并且通过编写几个基础的构造函数,用来适配所有消息模板的内容构造。仅仅三个构造函数,便可支持数十种消息模板的发送。平台整体上通过区分不同的业务模块,尽可能地提高类的复用性并且降低耦合度。

3.3 协同过滤算法的实现

由于在搜索某一本书时,需要推荐用户一些相关的书籍,如果按书籍大类来进行选择推荐,最终能真正符合用户需求的不多,而协同过滤算法就能基于用户之间的喜好来相互进行推荐,当用户量足够大时,对于有相同借书喜好特征的用户,相互推荐的结果较为准确,算法实现原理如下:

1)當A用户查找X书籍时,系统开始搜索借阅过、收藏过X书籍的用户作为第一次筛选的用户集。

2)比较A用户的借阅历史,当第一次筛选的用户集中有一B用户也借阅过A曾借阅过的书籍,那么将B用户放入到第二次筛选的用户集。

3)在第二次筛选的用户集中,对比X书籍以及用户集的借阅收藏历史,通过计算书籍之间的欧几里得距离评价进行排序,排序靠前的书籍进行推荐。

3.4 界面设计

在前端页面的设计上,该平台采用了主流的响应式设计,通过Bootstrap响应式布局,让界面布局效果整体统一,兼容不同屏幕大小的移动设备,为用户带来良好的交互体验[3]。在配色方面,整体采用色号#00CC99作为主题色,整体颜色全部采用Web安全色进行搭配,样式采用扁平化的设计理念,提高了用户浏览信息的效率[4],同时大量使用阴影、圆角等特效,确保整体的UI统一美观。由于微信端有多处需要弹出窗口对用户的操作进行提醒,该平台统一采用了柔和色调的弹出窗口并加上动画效果,让每个跳转操作都生动有趣。由于部分页面需要进行数据渲染的元素较多,该平台通过动态加载的方式来一次加载多个页面的内容,摒弃了传统的iFrame选项卡的形式进行页面的加载,而是通过js文件动态的添加HTML代码来渲染表格信息的形式,节省了大量重复加载js、css文件所花费的时间。经测试,页面渲染效率高,加载速度快,界面美观。部分功能界面如图2、图3。

4 结束语

随着互联网时代的快速发展,手机上的信息量越来越大,越来越少的人会选择静下心来捧一本书阅读,智能图书借阅平台呼吁用户走进图书馆,鼓励读者参与到全民纸质阅读的浪潮中。该平台的设计与实现基于微信公众平台,用户无需下载App即可借阅书籍,很好地解决了传统图书馆借书流程烦琐、找书难的问题,帮助读者更快定位书籍信息,更懂用户。书籍上架提醒、图书到期提前通知等人性化提醒,也让用户借的放心,感受到图书馆“无微不至”的呵护,让平台成为用户的贴心伴侣。

参考文献:

[1] 袁曦临, 王骏, 刘禄. 纸质阅读与数字阅读理解效果实验研究[J]. 中国图书馆学报, 2015, 41(219): 35-46.

[2] 黄光芳. 面向接口编程在三层架构系统中的设计与应用[J]. 计算机应用与软件, 2009, 26(6): 133-135.

[3] 李颖. 基于响应式设计的Web App界面布局研究[J]. 安庆师范大学学报: 自然科学版, 2017, 23(3): 62-67.

[4] 宋方, 金锦虹, 逯新辉. 析“扁平化”手机界面设计[J]. 包装工程, 2012, 33(14): 60-63.

【通联编辑:谢媛媛】

猜你喜欢
图书馆
去图书馆坐坐
图书馆
图书馆里送流年
夜间的图书馆
图书馆里的小惊喜
图书馆 Library
图书馆