当前位置:首页 期刊杂志

基于“红乐游”App 的设计与开发

时间:2024-04-25

郭跃 高楠

摘 要:针对全国范围内兴起的旅游业转型升级的浪潮,文章调研本市所有红色旅游景点区域,分析目前红色旅游服务存在的不足问题,进而设计出了一款基于红色旅游的智能App。该 App 软件在实际使用的过程中能够较好的满足游客对于景点的需求,完美的解决了游客在游玩时的烦恼,得到了用户的一致好评,同时该 App 也成为了国内对红色旅游文化宣传的一种有效途径。

关键词:红色旅游;智能 App;有效途径

一、引言

随着广大人民消费水平的提高,消费行为的多样化,全国范围内兴起了旅游业的转型升级的浪潮。旅游发展逐步进入休闲时代、健康旅游时代、多样化时代和高端化时代。同时,旅游业的新业态伴随转型升级的浪潮快速成长。

我们的项目致力于设计一款红色旅游 App,带你重走长征路。领略先辈们艰苦奋斗的革命历史,体验爬雪山的不易、过草地的艰苦。传播红色文化,宣扬红色精神。该 App 从长征所经过的地方着手,介绍各个地方的红色旅游文化,以此为据来宣扬红色教育、缅怀革命先辈。为那些重走长征路的人提供了一个较好的途径,使更多的人参与到其中来,贡献自己微薄的力量。1. 打造主流的商务型、低碳型、健康型、快乐型红色旅游产品 2. 激起群众参与红色旅游的热情,将红色旅游作为一个响亮品牌、成为人们出游的重要选择。3. 弘扬爱国主义精神,促进人民的精神动力。

二、总体架构

本项目利用 Dubbo 来构建整体服务器集群的分布式服务。在 PC-Web 端采取B/S 架构, 前端为 Vue+Element-UI 进行页面的展示,利用前后端分离的模式进行 PC 端开发。移动端采取微信内嵌小程序的方式进行页面展示。在服务器端使用 SpringBoot 提供统一接口,以ResultfulApi 的规范将结果集封装为 JSON 数据以供移动端和 PC 端进行Ajax 的异步调用,以便数据的传输。数据库方面使用 MySQL 对数据进行持久化存储,用轻量级框架MyBatis 用于后端与数据库进行交互操作,同时,数据库连接池使用阿里巴巴开源平台上的 Druid,用于监控 DB 池连接和 SQL 的执行情况。数据库中间件采用了开源的分布式数据库系统 Mycat,以便后期业务需求及客户量增长所需的分库分表操作进行预先准备。根据特殊模块场景的需求及功能不同,在景点介绍和预约导游模块则分别引入了NoSQL 数据库ElasticSearch 和 Redis 进行数据的索引与搜索和持久化存储。并且为了方便服务器端ElasticSearch 中索引数据的管理,引入数据可视化工具 Kinaba。在日志记录方面采用了SpringBoot 默认的日志框架 Logback 进行日志文件的记录,以便后期线上问题的排查及系统的维护。在文档方面采用了 Swagger-UI 在后端源码中使用注解的方式对接口功能及参数说明文档进行归纳与整理,以便前端开发人员更好的进行接口的调用。系统总体架构示意图如下图 1 所示:

三、系统实现

(一)功能模块需求:

景点介绍:为各个景点的历史背景的介绍及革命先烈在此发生的有趣故事,并在各个景点介绍的模块下添加了分享功能,以便之后的旅客在旅游规划阶段能更加顺利的进行。

路线导航:为旅客提供切实可行的道路,使游客简单快捷的到达该景点。

预约导游:若旅客想对该景点有进一步的了解、更深入的认识,可从本 App 中提前预约导游。

公益项目:提供了打赏功能,将所得到的善款用以革命遗迹的保护及修缮,使更多的人参与到其中来,贡献自己微薄的力量。

(二)各模块实现

系统总体功能模块图如下图 2 所示:

景点介绍:该功能提供搜索与页面初始景点介绍功能,初始景点为用户搜索的热点景点, 数据通过 ElasticSearch 进行文件存储。使得在搜索时可以快速进行文件数据的检索,以增强用户体验感。在景点分享功能通过接入 QQ、微信、新浪微博等平台的分享接口实现。

路线导航:该功能实现方式分为两种,首先前端页面对于用户目前所在地与目的地景区的简单逻辑判断去调用不同的接口。接口一:针对景区附近路线,通过调用内部的地图导航系统,系统管理员可根据节假日亦或景区安排为消费者提供更切实可行且便捷的出行方式; 接口二:通过调用高德地图的第三方库接口以实现需求,用户只需输入当前所在地与目的地即可获得多种选择路线(上限为 5 条),让用户可以根据自我喜好选择适合自己的路线。

预约导游:该功能展示页为平台签约金牌导游,用户可通过选择城市、景区两个选项对该景区导游信息进行查询与预约,仅提供在旅游前一天预约第二天的导游,每名导游仅可在当日被三十位用户预约,以保障用户的旅行体验感。同时为了避免在零点数据刷新时旅客的预约导游数量暴增,该功能后端使用 ActiveMQ+Redis 的模式对数据进行过滤与存储,以此应对突发的高并发场景。每名用户发起的异步请求先进入消息队列进行处理,前端展示排队中动画,若超出消息队列长度直接提示该导游预约已满。同时对队列中的任务进行处理,将预约信息存储至Redis 中,并进行持久化处理。

公益项目:该功能在移动端微信小程序中接入微信商家入口,使用微信支付即可进行任意金额的打赏。在 PC-Web 端接入微信与支付宝的支付接口,以便提供给用户多元化的选择。

(三)系统实现示意图

四、功能测试

功能测试顾名思义指的是从功能角度触发,对产品进行多方面测试。以此来保证产品各个功能模块达到预期目标,让用户在使用产品的过程中增强体验。系统的测试方法有多种多样,选择一个适合系统的测试方法则显得十分的必要。不仅节省测试的时间,节省了测试的成本,还提高了测试的效率。由于本系统的采用 SpringBoot+Vue 这样一种前后端分离的方式开发的 App,后端 SpringBoot 采用 MVC 三层架构,所以其内部实现原理相对比较清晰。在此基础上选择黑盒测试更优。因为白盒测试更注重的是软件内部实现原理,同时黑盒测试在效率及成本的控制上相对白盒测试更为适合本系统的测试。

五、结束语

在如今这个信息高速发展的时代,过去的盲目出行已经逐渐被人们抛弃,越来越多的人趋向于移动设备来解决出行问题,本次 App 的出现给那些狂热与红色旅游的用户带来了极大的便利。本 App 的出现主要有以下优点:

1.该 App 的出现有利于宣扬红色文化,我们可以了解到更多的长征精神。

2.节省时间,为人们的出行提供了一种方便、快捷且高效的途径。

3.改变大众对于传统旅游的观念,开启了旅游的新方式。

4.增强红色旅游业的竞争力,其潜在市场巨大。

5.提高景点的知名度,为景点带来巨大的收益。

参考文献:

[1]孙鑫编著.Java Web 开发详解[M].电子工业出版社,2006

[2]盧湘江.MySQL 高级配置和管理[M].清华大学出版社,2001

作者简介:

郭跃,男,汉族,研究方向:计算机科学与技术。指导老师:高楠,女,汉族,陕西省延川县人,哲学硕士,单位:延安大学.

基金项目:2019年国家级大学生创新创业训练计划项目(编号201910719035)

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!