RW电子图书APP制作开题报告
2020-06-03 22:07:36
1. 研究目的与意义(文献综述包含参考文献)
一﹑系统开发的背景及意义
电子图书作为一种新形式的书籍,具备图文声像结合的优点,可检索、可复制、有更高的性价比、有更大的信息含量、有更多样的发行渠道等。与传统书籍相比又有许多相同点:包含一定的信息量,有一定的文字量、彩页;其编排按照传统书籍的格式以适应读者的阅读习惯;通过被阅读而传递信息等等。
在信息化不断普及的当今社会,人们对于事物的各方面如:方便、快捷、高效等提出了更高、更深层次的要求。而对于图书地查询、阅读和交流讨论,电子图书更能符合满足大众的需求。电子图书更加方便信息检索,大大提高资料的利用率。存储介质较传统书籍而言容量更大,成本更低,内容更丰富,增强可读性,降低了工作量,更具系统性。电子图书运用无纸化的新方式方法、多媒体等新工具手段,以丰富其形式内容。同时无纸化也更加环保,电子图书不再依赖于纸张,以储存介质取而代之。电子图书一般都不仅仅是纯文字,而添加有许多多媒体元素,如:图像、声音、影像等,丰富了阅读形式及信息空间。随着互联网迅猛发展,传统知识电子化加快,基本上除了比较专业的古代典籍,大部分传统书籍都搬上了互联网,这使电子图书读者有近乎无限的知识来源。
ramp;w电子图书app的设计,旨在给广大读者提供了一个更加方便、快捷、全面和人性化的读书平台。读者可以语音或键入搜索自己喜欢阅读的图书,而语音搜索则更加方便,根据检索结果在线试读进而使用积分进行下载阅读。另外针对于不同读者的兴趣爱好,系统也会根据其喜好进行相关的图书推送,读者也可以根据当下最热图书的排行选择性地阅读。对于喜欢写作的读者,在写作区可以尽情地发挥自己的文采,系统会实时地保存当前书写内容,完成后可上传发布自己的图书,将会得到相应积分,用于下载或购买图书。在交流讨论方面,读者可针对某一话题语音或按键输入交流内容,实时地分享自己的心得体会。在管理方面,管理员可以登录以实现对用户注册信息的审核,用户信息地增、删、改、查等管理;以及对图书的分类、上传图书的审核和图书地增、删、改、查等管理。这给广大读者提供了一个良好地阅读、写作和讨论交流的平台。
本次毕业设计的内容是设计实现一个功能多样化的电子图书app,拟采用 java 开发语言,使用 eclipse adt android sdk搭建的android开发环境和sqlite内置数据库技术与 mysql 数据库技术,整体开发使用 mvc 框架。客户端是安卓app,其中图形界面是通过安卓的xml书写的,与后台的交互是用java for android进行开发的,其中主要用到的技术有jdbc、socket等。客户端和服务器通过sockets进行交互,把下载的数据保存到本地的sqlite数据库中,服务期端通过mysql数据库存储客户端信息。关于本次电子图书app制作过程中使用的语音识别技术,拟采用讯飞开放平台提供的android平台的语音听写sdk(1.1112版本)和在线语音合成sdk(1.1112版本),通过接口调用以实现语音识别的功能。
将电子图书与当下智能手机应用软件很好地结合,开发出一个符合大众要求的电子图书app,这更加符合大众的生活习惯,也十分符合信息化发展的趋势。
二、课题涉及技术
1. java 语言
java是一门面向对象编程语言,它吸收了c 语言的各种优点,摒弃了c 里难以理解的多继承、指针等概念,使其具有功能强大和简单易用两个特征。java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。同时java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。
2. 语音识别技术
语音识别技术,也被称为自动语音识别automatic speech recognition,(asr),asr就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。其主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。语音识别的方法主要是模式匹配法,在训练阶段,用户将词汇表中的每一词依次说一遍,并且将其特征矢量作为模板存入模板库。在识别阶段,将输入语音的特征矢量依次与模板库中的每个模板进行相似度比较,将相似度最高者作为识别结果输出。语音识别系统的模型通常由声学模型(hmm声学建模:马尔可夫模型,上下文相关建模:协同发音)和语言模型(规则模型,统计模型:其中n-gram被广泛使用)两部分组成,分别对应于语音到音节概率的计算和音节到字概率的计算;使之运用到连续语音识别中的搜索中,即寻找一个词模型序列以描述输入语音信号,从而得到词解码序列,同时使用基于动态规划的viterbi算法得到最终的识别结果。
语音识别技术的应用包括语音拨号、语音导航、室内设备控制、语音文档检索、简单的听写数据录入等。语音识别技术与其他自然语言处理技术如机器翻译及语音合成技术相结合,可以构建出更加复杂的应用,例如语音到语音的翻译。
3. eclipse 开发工具
eclipse 是一个开放源代码的,基于 java 的可扩展开发平台。它是一个框架和一组服务器,用于通过插件组件构建开发环境,专注于为高度集成的工具开发提供一个全功能的﹑具有商业品质的工业平台。它主要由 eclipse 项目﹑eclipse 工具项目和 eclipse 技术项目三个项目组成,具体包括四个组成部分#8212;#8212;eclipse platform﹑jdt﹑cdt 和 pde。利用它我们可以在数据库和 java 的开发﹑发布,以及应用程序服务器的整合方面极大地提高工作效率。它是功能丰富的 java 集成开发环境,包括了完备的编码﹑调试﹑测试﹑和发布功能,完整支持 html﹑struct﹑jsf﹑css﹑javascript﹑sql。
4. sqlite数据库
sqlite是一款轻型的数据库,是遵守acid的关系型数据库管理系统,它包含在一个相对小的c库中。它占用资源非常的低,能够跟很多程序语言相结合,比如 tcl、c#、php、java等,还有odbc接口,同样比起mysql、postgresql这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
5. mysql 数据库
mysql 是一个完全多线程,支持多语言,多处理器的中、小型关系型数据库管理系统,它使用标准的 sql 语言(结构化查询语言),支持多种存储引擎。mysql 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。另外,它体积小,拥有总体成本低等优点。
6. 套接字
源ip地址和目的ip地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务。它是网络通信过程中端点的抽象表示,包含进行网络通信必需的五种信息:连接使用的协议,本地主机的ip地址,本地进程的协议端口,远地主机的ip地址,远地进程的协议端口。
7. mvc框架
mvc是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。mvc被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
参考文献:
[1]薛彦俊. 移动图书馆app应用的探讨[j].电子测试.2016
[2]郭丽霞. 浅谈电子书未来研究方向与发展趋势[j].科学中国人.2016
[3]乐银煌. 基于学习型电子书的移动学习模式研究及其应用[d].中国科学技术大学.2014
[4]何瑶. 近十五年国内外图书馆电子书管理的研究与应用[j].图书馆学研究.2016
[5]廖新辉. 基于语音提示和文字识别的无障碍移动电子书朗读器的研究与实现[d].浙江大学.2016
[6]曾健生. app后台开发运维和架构实践[m].电子工业出版社.2016
[7]海英. 基于android平台的电子图书阅读软件的设计与实现[d].北京工业大学.2015
[8]郑芃芃. 新兴媒介对书籍设计的影响[d].南京大学.2014
[9]李佳卓. 基于android的闲置书籍借阅系统的设计与实现[d].吉林大学.2016
[10]俞栋,邓力. 解析深度学习:语音识别实践[m].机械工业出版社.2016
[11]高飞,陆佳炜,徐俊,赵小敏. java程序设计实用教程[m].清华大学出版社.2014
[12]张暑军. 数字化出版系统设计与实现[d].电子科技大学.2014
[13]方腾飞,魏鹏,程晓明. java并发编程的艺术[m].机械工业出版社.2015
[14]谢原武,龙文. 基于android开发的app数据存储研究[j].电脑知识与技术.2016
[15]bill phillips, brian hardy. android编程权威指南[m].人民邮电出版社.2014
[16]王平根,刘庆梁. 基于jsp sql android开发技术的校园通app[j].科技视界.2016
[17]齐志飞. 基于移动平台的数据采集管理系统设计开发[a].江苏省测绘地理信息学会.江苏省测绘地理信息学会2014年学术年会论文集[c].江苏省测绘地理信息学会.2014
[18]王双,范旭飞,刘昊,杨梓东,车新生. 大学生校内交易二手网[a].中共沈阳市委、沈阳市人民政府.第十二届沈阳科学学术年会论文集(理工农医)[c].中共沈阳市委、沈阳市人民政府.2015
[19]孙宁. android平台移动自动化办公系统的设计与实现[d].吉林大学.2016
[20]凯s.霍斯特曼. java核心技术 卷i 卷ii[m].机械工业出版社.2016
[21]范茵. 数字阅读时代”多看阅读”电子书内容平台探究[d].陕西师范大学.2015
[22]sajal rastogi,kriti bhushan,b.b. gupta. android applications repackaging detection techniques for smartphone devices[j]. procedia computer science.2016
[23]vivek balachandran,sufatrio,darell j.j. tan,vrizlynn l.l. thing. control flow obfuscation for android applications[j]. computers amp; security.2016
[24]sajal rastogi,kriti bhushan,b.b. gupta. measuring android app repackaging prevalence based on the permissions of app[j]. procedia technology.2016
[25]ali feizollah,nor badrul anuar,rosli salleh,guillermo suarez-tangil,steven furnell. androdialysis: analysis of android intent effectiveness in malware detection[j]. computers amp; security.2016
2. 研究的基本内容、问题解决措施及方案
第一阶段:
巩固 java 基础和 mysql 数据库的使用以及android开发环境的搭建使用和android开发的基础知识,学习sqlite数据库的使用,熟悉 eclipse 开发工具的使用。规划整体界面布局设计,对所设计app的功能有明确地把握,做好整体项目开发的大致规划,搭建开发所需的环境。
第二阶段:
编写需求分析,进行设计﹑编码﹑测试 。系统结构图如图所示:
需求分析:
1.阅读区:搜索图书(关联查询、动态推送等),阅读图书,上传图书(积分奖励),下载图书(积分管理)。
2.写作区:写作内容的输入(文字或语音输入),对输入内容的修改,对输入内容的删除,保存当前写作内容,发布上传作品(积分奖励)。
3.交流区:查看讨论区内容,输入评论内容(文字或语音输入),发送评论内容,发起话题讨论。
4.管理员:阅读区管理(审核上传图书等),写作区管理(审核发布作品),交流区管理(维护交流区秩序如:屏蔽发布不良话题、极端言论用户),用户信息管理(增、删、改、查等),图书管理(增、删、改、查等)。