基于微信小程序的形策知识对战平台的设计与实现

 摘要

针对线上学习形策知识,本项目提出了基于微信小程序的形策知识对战平台,微信作为当代移动信息的重要载体,可以使信息的交流不受时间和空间上的局限。用户在其中借助微信小程序APP,就能够进行群体之间承载教学相关的文字、音频、图像以及视觉上的全面交流。

微信小程序是依附于微信社交平台应运而生,并且不需要安装,用户就可以直接扫码登录使用,且占用存储量几乎较小,兼具诸多出色优势。并设计出了一个基于微信小程序的形策知识对战平台。且具备实时性和趣味性的移动学习平台。系统以JavaScript语言设计,并采用了微信开发者工具(小程序编写及后台云数据库),实现了采集用户数据、本地保存、自主出题和与形策知识对战等功能等,在本系列小程序测试结果中显示,系统运转平稳,目标定向准确,基本实现了微信小程序形策知识对战的需求。

 关键词:形策知识对战;自动出题;JavaScript;微信小程序

 第1章前言

  1.1研究背景及意义

个人由于各种微信公共账号的大量引进和普及,以及信息产业的无限量扩展,更加要求信息管理的方便快捷,而现代计算机技术的全面应用也已造成了信息产业发展与竞争的全球化,这就需要对有关企业、公司都需要有一种更加敏捷的技术,更加扁平化的经营管理模式,更加迅捷的信息反映与决策,以及更加体贴的对个人用户的服务需求。所有这一切都是由于计算机技术的发达而产生的,同时也必须依靠现代化的计算机技术来增强企业和公司的实力。本次微信小程序软件开发的目的是为了进一步实现形策知识对战平台的信息化,减少人力投资和费用,提高使用者对形策知识对战平台学习交流的便利。

移动端的各种应用形式也不再以服务器端app的形式出现,且app服务器端的研发时间也较长,开发者数量众多,因此,现有的应用产品在初期的形式上都要以服务器端的形式出现,则应用方试错成本更大。如果有一项功能能够以最快的速度,用最小的工程量的方法把企业的最核心业务功能体现出来,则对平台方,将具有重大意义。这个方法就是微信小程式,它开始兴起时是作为对附近商家的宣传工具或者导流用的,但逐渐往后发展,不同用户平台也开始将根据自身的商品的客户端形式逐渐转变为微信小程序形态,并利用自身的企业微信的大流量背书作为自身的商品宣传工具,在这样的发展背景下,如果把形策知识对战平台和微信的小程序功能相结合,那么既可以有助于实现在形策知识对战平台的移动设备碎片化,以及情景下的学习优势,也有助于用小程式给初创的最重要核心服务版本的形策知识对战平台带来良性活力,从而形成一个完整而又高效的生态系统,同时也能够让更多人参与到这个过程当中来,并通过这种方式去提高用户体验度和使用粘性。为系统生命周期奠奠定了坚实的基础。

 1.2研究现状

目前,围绕着微信小程序平台的各方运作主体已经开始初具一定规模公众,平台功能的不断提升创新和用户数量的持续增长,将为运营主体提供更多的可能性。在一波又一波网络浪潮的洗礼下,商家们在接触到新型的网络营销产品时都开始了不自觉的激动,而一旦再看到竞争对手也都开始采用这种产品时就更加兴奋了。这就造成了微信营销工具被大量别有居心的人所使用,趁着商家资金在从其他渠道向微信市场转移的进程中,当了一回搬运工,然后又从中掘桶装钱,所以也看到了市场上无序的价格大战和参差不齐的质量。

如今互联网新市场对于平台开发的短期务实心态,使得第三方开发商来不及深究和革新,便开始效仿对方,并努力践行“你有我也有”的理念。而这种现象正是因为在当前时代下,用户需求越来越多元化、个性化,对内容质量要求更高,因此,如何能够快速响应客户需求是所有企业必须要思考的问题之一。很多优秀的微信小众软件第三方开发者都是以获取短期的利润空间为目标,仅将自身产品定位于“外包公司”的定位,单纯的忽悠用户,而不对产品的实际用户负责,完全无视用户感受,只重视研发产品的功能模块,却又不切实发挥引流、推广产品的功能,对微信公共账号的营销方式以及CRM管理系统一窍不通,严重拉低了一个行业的从业门槛。由于微信公开的功能在持续的增加,所以有些公共小程序也将会进一步的丰富自身,同时开启了某些功用并进一步的升级和维护,这样一来也就带来了更多的系统其他能力,从而可以便于开发者进行更深层次的研究挖掘。当然随着微信的完善未来会具有更强的内容。企业所能完成的职能也将随之扩大,而微信小程序的一些相关内容,对微信小程序的未来发展将具有突出关键的意义,同时有利于企业推动微信的开发,也有着相当重要性的意义。微信小程序的是在用户使用的基础上不断发展的,为了用户使用微信良好的体验,从而能够完成更多的功能。这不仅是为了吸引更多的企业应用,同时也是一个全行业的参与到了微信小程序开发当中来,也更加方便了微信的应用场景,使微信小程序开发的体验效果更加显著化增加。

微信小程序只要有智能手机就能使用,通过这个平台,你只需点击一下即可轻松获得相关知识和资讯。无需下载任何客户端。使用者可以直接用扫码的方式或者搜索查询的方法来打开自己所需要的小程序。这不仅方便了人们的生活,同时还提高了工作效率,让我们在移动设备上完成工作和学习成为可能。微信小程序已不仅仅是一个简单的工具,它将越来越多地服务于企业,服务于人,甚至改变社会。而这些都是传统软件无法做到的事情。这就是微信的功能应用所在。也体现了“用完既走”的目的。对于开发者而言,系统软件开发的门槛比较简单,开发难度也比一般的APP容易,一些基本的需求都能达到实现。其中,除了利用公众号,用户还能够进行公众号关联和微信小程序之间的交互切换。

 1.3研究方法

本文研究设计一个基于微信小程序的形策知识对战平台系统。形策知识对战平台分为用户登录、形策知识题库选择、排行榜、挑战赛和好友挑战四部分。其中第一部分:用户注册登录,进入平台界面就可以参与知识答题;第二部分:形策知识题库的难度选择;第三部分:挑战赛和好友挑战,每个模式个随机出五道题,在规定的时间呢完成答题。系统最后的是设计是以前端为主,整体设计简洁清晰,同时也方便用户操作简单,基本能够满足使用者趣味学习形策知识。

本文设计的形策知识对战平台小程序采用了WXSS、WXML和JavaScript逻辑框架完成形策知识对战平台页面的设计,利用JavaScript语言编写形策知识对战平台数据库的设计,最后完成程序的页面和数据库的交互和存储。利用API接口实现小程序数据的调用界面,可直接调用相关模块功能,最后将界面的数据调用到MY SQL数据库入库。本次小程序使用了IntellI J IDEA软件开发系统,并对其进行了代码编写工作。后期利用微信开发者工具开发小程序运行过程中产生的性能分析与优化问题来检测系统界面是否能完成所需要的功能。

 1.4论文结构

文中就自己所开发的毕业设计的微信小程序的形策知识对战平台作了简要的介绍。具体的工作以及系统实现的需求等,将以下5点进行介绍:

绪论,重点介绍了本次课题基于微信小程序的形策知识对战平台的开发背景与重要性,以及软件系统的研究目的还有对基于微信小程序的形策知识对战平台研发的内容等进行可行性分析。

小程序相关技术简要,重点介绍本次程序所用到的技术和开发软件,能使所有用户都能对该技术有明确的了解。

3、形策知识对战平台小程序的系统分析,着重介绍在研发形策知识对战平台小程序时所需的可行性研究分析和功能分析。有助于用户对本程序分析重点内容的理解,同时根据需求分析对系统进行详细设计。

4、形策知识对战平台小程序的设计与实现,着重介绍形策知识对战平台的设计与搭建、程序架构实现设计、开发环境、功能模块设计以及数据库的设计,并添加代码、图片和表格使用户能快速地了解本章。

5、形策知识对战平台小程序测试。主要介绍系统研发成功后,测试程序各个功能是否可以实现,程序测试是本次程序在研发过程中必须要做的流程。读者通过本章就可以基本掌握操作系统的软件测试性能。

 第2章相关技术介绍

  2.1小程序技术

1、WXSS简介

WXSS是微信样式表的简称,它主要用于制作微信界面模板。在网页上创建一个页面后,可以直接使用WXSS来做一些简单而实用的工作,比如:文字排版、图片填充、表格设计等。另外,WXSS还支持自定义菜单和界面以及自定义属性等功能,方便用户使用。同时也增加了一些新的应用。WXSS具备了前端的绝大部分功能,甚至还进行了调整与升级应用。

2、WXML简介

WXML是微信的标记语言,在Web上对应于HTML,只是使用的标签名字不同,日宽容度没有HTML高。通过将其应用到微信公众平台上,不仅能够让用户更方便地查看自己需要了解的信息,而且还能使用户在浏览时更加直观明了,同时还能提高用户体验。WXML的标签经过封装,在其内部设置了文字,图像,声音等组件,利用这些组件进行构建和编排,再结合系统定义的基础组件和事件系统就可以构建出别具一格的界面。

 2.2微信开发工具

基于微信为基础的形策知识对战平台,采用微信开发者工具软件、Intellij IDEA软件以及Java Script进行本系统的开发。微信开发者工具,它是一款基于微信小程序软件的开发、调试和检测等功能的软件。同时,还具有良好的兼容性,可以兼容不同版本的微信。该工具支持所有的微信开发包以及其他应用程序,并能够提供各种接口供用户使用。Java Script,它是一种通用语言编程技术,也是一个强大而灵活的脚本语言。它具有简单易懂、功能强等特点。本次系统微信开发者使用的功能:如下表2.1。

4df8d57adb915c3eb585d9eeb0155afa

 2.3MySQL数据库

数据库的建立是存储用户信息或者使用者在前端产生的一些系统信息,这些信息会转存在数据库里。MySQL一个安全可靠、跨平台性、高效率的,并和Java等现代主流程序设计语句密切融合的数据库。因为其体积小、效率快、成本小,而且是开放源码的这一特性,导致了很多开发者都选用MySQL数据库。MySQL数据库系统可以说是目前世界执行效率最快的SQL语句数据库系统之一。而My SQL不但具备了其他数据库系统软件的基本功能,同时MySQL数据库也是一种完全免费的产品,用户可以直接下载MySQL数据库,而无须另外掏取任何费用。在MySQL中采用了多种数据库存储引擎进行开发,可以按照自身的发展需要选用最合适自身的引擎,以实现良好的功能性,并且,MySQL还支持跨越平台的服务,并且能够进行移植,几乎无须改动就可以进行引用。同时My SQL还拥有优秀的兼容性,可以兼容多个不同的操作系统,同时提供了强大的数据处理功能。速度快是MySQL最明显的特性。MySQL的稳定性也非常好,拥有安全可靠的授权和密钥体系,并且容许服务器的认证。在链接到服务器上时,所有密码传输方法都采取了加密,从而确保了安全性。

此次小程序采用的是:Navicat Premium 15.Navicat Premium软件数据库。它可以连接多个数据库开发的工具:MySQL、MariaDB、SQLServer和PostgreSQL等数据库此软件都可以连接,同时也可能满足现在数据库的所有功能,其中就包括:保存、函数、事件等。Web系统的发展基本上是离不开数据库系统的,因此所有内容都需要存储到数据库系统中。数据的形式可能是不同的,文本、字符、图形、声音等都是数据,数据是几乎是计算机系统都要加工的对象。这个项目的研究本身就离不开数据库,浏览的网站信息、图片、文字等均是来源于数据库。MySQL的使用利于本项目的数据处理,提高了项目运行效率,降低了成本。使得本项目开发灵活高效、简单快捷。

 2.4开发环境

  2.4.1Java Script简介

JavaScript,是一个解释性编程语言,也会被当今程序员称为“JS”。采用JavaScript作为脚本语言来编写Web网站,JavaScript具备动态性的脚本语言,同样也采用了原型程序,不但适用于所有环境中,甚至对很大一部分的非浏览器环境中也一样适合。JavaScript于1995年首次设计成功并应用于网景导航者,此后,JSP技术得到快速发展。如今,许多人喜欢使用浏览器来查找自身所需的网站或浏览所需的网页,于是就产生了浏览器和Web之间的交互问题,而这种交互又是由Web本身决定的。同时Netscape还与Sun公司进行了合作,从管理的角度进行了思考,希望它的外形可以与Java一样,所以被称为JavaScript.但在实际应用中二者的语法风格却有很大的区别。在HTML页面中主要采用JavaScript来增加交行为,同时也具有跨越平台的个功能性,这也意味着JavaScript的安全性比较差。伴随着软件技术在当今社会上的不断更新和发展,越来越多的编程人员使用JavaScript来进行网页制作、浏览及发布,并且取得了非常不错的效果。它和其他语言一样,也有自己具备的一些基本数据类型、表达式等,同时它也可以在web页面上实现人机交互。

 2.4.2IntelliJ IDEA简介

Intellij IDEA软件不同于其他开发软件,它是一个便于开发者使用的软件。为开发者带来一些优点:通过简洁易懂的用户界面,可以很容易地写出需要的代码,很适用于初级开发者。同时它又具备很强的交互性,能够帮助开发人员实现更复杂和困难的任务,并且提供大量的信息供他们选择。例如,IDEA软件中提供了许多与编程有关的工具,包括图形编辑,数据输入,函数调用等各种操作方式;另外,它也支持对文件进行压缩处理以及数据恢复等技术。此外还具有强大的数据库管理功能,在这个界面上运行任何任务都非常方便。

 2.4.3Java简介

本次基于微信小程序的形策知识对战平台采用Java语言来编写后台。其中,JAVA程序设计语言所提供的功能是非常强大的,它是一项开放式的技术标准。在这个过程中,可以使用Javascript脚本和java框架进行编程,也可以通过Java语言开发出相应的应用程序。也可以将JAVA应用到其他领域当中去,基于这些实现模式,就能够非常容易地实现Java编程语言的跨平台功能。Java语言有很多令人骄傲的好处,比如简洁、面向对象、布局式、可信、稳定性、构件中立性、可移植性、效率高、多线程、动态性之类等。

第3章系统设计

  3.1可行性分析

  3.1.1经济可行性

因为本系统属于微信小程序开发的形策知识对战平台,可以利用微信等网络平台进行各功用的实现,而且整个体系规模也不是很大,所以整体开发成本并不是很高。在实际应用成本上,使用者只需有一台可以连在全球网络上的个人电脑或者智能手机,通过登陆微信小程序就能够在全球的任意某个位置,来获取应用本站的所有功用与业务。同时对电脑和手机的硬件的要求也并不是很高,对软件系统方面也不是特别的要求,只需要微信app小程序就可以。这样更便于广大用的人浏览和应用。所以,就经济可行性分析来说,这种微信app中的小程序就体现现了经济实惠、方便简洁、易操作而且功能强大的优点。

 3.1.2技术可行性

基于微信小程序的形策知识对战平台采用微信小程序开发者工具软件进行开发。微信小程序不需要下载应用程序,可直接在微信搜索栏目中直接查询使用。前端采用微信提供的WXML和WCSS进行开发创建页面结构,后端采用MySQL存储数据,采用流行的MySQL+Spring集成框架。这些技术各种论坛讨论较多,学习渠道较多。因此满足技术可行性。基于微信小程序的形策知识对战平台的开发流程如以下:

1、在微信公众平台登录或者注册微信公众号;

2、登录或者注册好之后,申请关联和域名,域名需要支持http地域id;

3、使用Intellij IDEA软件编写小程序的界面功能的代码进行设计;

4、设计小程序界面,然后使用开发者工具进行前后台连接;

5、使用JS技术编写数据库设计以及接口设计;

6、黑盒测试小程序开发的各种功能以及程序的流畅度,使用开发者工具进行调整。

 3.1.3操作可行性

系统本着保证用户体验、简化用户操作的原则,充分利用窗口、表单、按钮、下拉菜单等构建界面,尽量使页面简洁美观,尊重用户一般使用习惯。再者,自从微信小程序诞生以来,当前大多数用户已经对小程序的使用有了一定的基础。因此该系统满足操作可行性。

 3.2功能分析

本课题以基于微信小程序的形策知识对战平台为研究目标,通过微信小程序开发平台,获取用户信息、本地存储、自动出题功能等;实现应用程序的用户界面;能够利用互联网实现远程对战。主要功能如下:

形策知识选择:用户可以选择形策知识信息。

挑战赛模块:用户进入挑战赛模块,可以匹配用户,匹配成功之后进入答题界面,系统会自动随机抽五道选择题(单选和多选题)库,供使用者进行答题。答题多的一方胜利。

好友挑战模块:用户进入好友挑战模块,可以匹配用户,匹配成功之后进入答题界面,系统会随机自动出五道判断题在规定的时间内完成答题。

排行榜模块:可以查看学习对战的排名。

  3.3用例分析

用户登录小程序可以进行形策知识选择、挑战赛和好友挑战功能,系统用例如图3.1所示。

e51b9f75766883011b94b4c949deafce

系统流程图例如图3.2所示。

52af780710be0019e18cf1b32e2f1c93

3.4非功能需求分析

形策知识对战平台小程序开发过程中,可以实现程序的功能性要求和用户体验,还需要兼顾功能与易用性,实现了良好的交互效果,但是同时也要考虑非功能性需求,如以下三点:

(1)易用性

系统开发的目的就是为了要提高管理的效率,方便使用。对使用者而言,易用性主要是指容易了解、易掌握、容易运用,在界面设计方面,要清晰明朗,分类有序,给用户一种最直观的视觉,操作步骤尽可能的简化。

(2)可扩展性

系统在开发初期,在业务需求方面考虑的不会很完善,随着形策知识对战平台发展,系统的功能需要在以后使用的过程中不断的进行完善与改进,所以在设计时要考虑代码的模块性与可复用性,减少后期的修改成本。

(3)安全性

形策知识对战平台的数据包括个人信息与信件,这些数据的重要性不会被泄露。在系统设计时,必须重视系统的安全,确保数据不被泄露,定期备份,防止丢失;在权限方面也要分配合理正确;非常重要的数据(证件号码等)还可以对其进行加密。

第4章系统设计与实现

  4.1系统架构设计

系统整体框图如图4.1所示。

3b39e8bd26ece74ad6c1c3ec4e856509

微信团队考虑到了小程序的特点,因此开发了MINA框架,MINA框架构成了一个JavaScript API的整体并且向上一层提供技术功能,这么做的好处就是使开发人员明确的掌握和熟悉小程序的的基本功能,总而言之,MINA框架只是简化了开发者研究的难度。基于微信小程序的形策知识对战平台采用WXML和WXSS来组建视图层,在逻辑层面用JavaScript,其中就有一个事件机制来处理层和层之间的通信。简单的理解,就是这个事件机制可以接收信息间的互动所带来的新信息,并可让信息和视图同步。使用信息更新页面之后,就可以使用逻辑层的onLoad和onShow方式来查看运行结果。

本次系统框架采用MINA分为以下三点。

(1)、逻辑层

逻辑层的MINA框架的主要工作核心。微信小编程中各界面的数据处理、网络通信、应用、生命周期控制以及网页路由等,均是使用逻辑层面上的函数来完成。微信app的逻辑层是用JavaScript完成的。通过移动端提供的JS环境,可以使页面与JS进行交互。相关视图层所涉及到的事务,经过逻辑层后,完成了结果的处理,最后返回到对应的视图层上。在Java Script的基础上,微信官方根据当今社会用户的实际应用要求进行了更新,方便了微信小程序的开发,使得微信小程序的研发率大大提高。

(2)、视图层

视图层拥有与html相似的标记语言和基础构件。页面的基本视图框架由开发人员通过wxml的搭建实现。Wxml(Weixin Markup Language)和wxss(weixin Style Sheet)的文件集合,组成了一个视图层[18]。通过微信的软件可以将信息从逻辑层面处理,随后传送到视图层上通过基础组件显示,并继续对视图层上的事件信息进行处理。

(3)、系统层

视图层与逻辑层之间的联系需要通过系统层来完成连接,逻辑层会将消息的更变通报在视图层上,并且会使视图层上的网页进行一个更新的情况,同时视图层上也会将触发事情的发生的具体情况,通报给逻辑层上去处理。

<1>、页面临时数据

页面临时数据的主要作用是支持文件和网络的存储。另外,可以在整个开发项目中,app.wxss、app.js、app.Json这三个文档是在微信小程式系统中根目录下的系统文件[18]。作用如下表4.2。

b567cf0c78cd622e212b1aca2fd4a58c

<2>、文件存储(本地存储)

微信提供的数据API接口,如:

·wx.get Storage:获取本地数据缓存;

·wx.set Storage:设置本地数据缓存;

·wx.clear Storage:清理本地数据缓存

<3>、网络存储与调用

上传或下载文件的API接口,如:

·wx.request:发起网络请求;

·wx.uploadFile:上传文件;

·wx.downloadFile:下载文件

 4.2系统功能模块设计

系统共分为四个模块:授权登录、形策知识选择、挑战赛以及好友挑战。系统主要功能模块如图4.3所示。

3a6f195e20b83329230e3b04a8cfaabb

4.3数据库设计

  4.3.1数据库表设计

本小程序采用mysql数据库。主要用于记录用户在使用微信小程序时产生的相关数据。系统采用My SQL作为后台服务器,Java Script语言作为编程语言。通过对微信小程序进行功能需求分析与框架结构规划相结合,设计相应的表结构,并利用数据库中的表结构存储相关信息。如4.4后台数据库表。

ace4229afb10ff5fd2f072eef1a956ff

 4.3.2数据库配置与实施

对数据库的基本逻辑结构和概念构造进行剖析可知,对数据库的设计必须完全按照该数据库的实际标准。而本次设计的数据库系统所使用的资料表,其编写的SQL语言与数据库标准之间也是相对应的,在制作数据库后,在数据库上会加载的测试数据。本系统通过对网络进行连接,将数据存储到服务器中,并根据实际要求来实现用户管理和数据备份等功能。还可以实现本次系统在数据库中调用题库,并实现自动出题等相关功能。创建服务器以后,可以使用相关的系统配置文件(database)和数据库进行了相应支持,在下面提供了主要的系统设置参数:如图4.5数据库参数表。

通过这些设置,就能够使服务器直接和数据库进行通讯,并且在相应的测试环境中也能够对数据库日志进行开启,这样就能够对数据库性能进行分析,并得到相关的测试数据。而客户端对数据库的存取使用的是Object方法,面向对象开发方法和关系型数据库之间的映射就产生了Object,最主要是实现的特点是Object通过让实体模型数据和关系模型信息间的交互转换,从而实现了更为灵活性的管理功能[19]。

 4.4微信小程序开发环境搭建

微信小程序开发前,使用网页版的微信公众登录或者注册微信公众号,在平台完成自己所需的基本信息,并下载开发者工具进行二者关联,其中申请关联和域名需特别注意:域名需要支持HTTP地域id,否则信息无法交互。根据小程序的界面需求展开设计、完成数据库设计以及后台接口的设计。设计小程序界面前端,然后使用开发者工具进行连接后台。该软件能够即时监控小程序的开发状况、迅速上传并部署代码、进行即时预览、并且收录了官方提供的API,以便于开发人员完成微信小程序的研发工作。

微信小编程的设计软件界面,基本上包含了微信小编程的代码撰写、代码调试,以及微信小编程仿真器等主要功能。图4-4是小编程的目录文件架构,一般有四种格式文档:JS、JSON、WXMI以及WXSS文档,相应于创建的程式逻辑方式、网页架构,以及样式的代码。此外,还必须在微信公共平台官网的服务器域名列表页面中添加形策知识对战平台的中央数据处理模块的服务器域名。

  4.5微信小程序界面设计

界面必须保证清晰易读,简洁大方。首先,We UI结构设计遵循“人性化”原则,给系统提供给用户友好的用户界面,同时也为用户提供了良好的设计准则。界面设计是We UI架构中最重要的部分,We UI设计需要与微信自身的特点相结合,并建立相应的样式库。里面的数据显示页面部分代码包括:

package com.example.battle.entity.sys;

import lombok.Data;

import lombok.experimental.Accessors;

import lombok.extern.slf4j.Slf4j;

import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.*;

import java.util.Date;

Slf4j

Data

Accessors(chain=true)

Entity

Table(name=”t_account”)

public class Account{

Id

GeneratedValue(strategy=GenerationType.IDENTITY)

Column(name=”id”)

private Long id;

Column(name=”open_id”)

private String openId;

private String skey;

Column(name=”create_time”)

DateTimeFormat(pattern=”yyyy-MM-dd”)

private Date createTime;

Column(name=”last_visit_time”)

DateTimeFormat(pattern=”yyyy-MM-dd”)

private Date lastVisitTime;

Column(name=”session_key”)

private String sessionKey;

Column(name=”city”)

private String city;

Column(name=”province”)

private String province;

Column(name=”country”)

private String country;

Column(name=”avatar_url”)

Column(name=”gender”)

private Integer gender;

Column(name=”nick_name”)

private String nickName;

}

小程序界面文件组成。如下表4.6表所示。

ca7a40b3944f346260c13737abc13ba5

  4.6小程序功能实现

  4.6.1小程序登录

小程式在用户微信中运行后,微信小程序需要维持登录状态,必须首先确定储存的3rd_session值是不是在微信小程式前台,如有,则传送3rd_session给微信开发者服务器,若是与微信开发者服务器上信息列表中保留的用户在初次认证登录时得到的3rd_session值一致,可直接进入微信小程式内部页面,或者切换到用户注册页面。小程序登录流程图如4.7:

aac723f62bea66cb9c77303a78165e3d  小程序登录界面如图4.8所示:

ae87ee0d72ce4e58651d6ded1e3ef58a

 4.6.2排行榜模块

用户进入排行榜模块,可以查看排行榜的用户,并选择用户进行挑战,如图4.9所示。

5590a8fa9e12e62ad1150d9ee43230fe

  4.6.3形策知识选择模块

用户点击形策知识,可以查看不同的形策知识,选择形策知识。如图4.10所示。

91c123ef0d0fbb1ba12f468d9125301d

 4.6.4挑战赛模块

用户点击挑战赛进入该模块,进行用户匹配,匹配成功之后进入答题对战界面,一方答对的题目多哪一方胜利,主要功能界面如图4.11所示。

bc37c420785cd03d7c4ba607bdfad8c7

4.6.5好友挑战模块

进入好友挑战模块,进入好友挑战模块,点击开始,进入知识对战界面,好友挑战界面如图4.12所示。

0447fcc479d17e0c453a577a1d43da35  自动出题模块及代码分析

1、试题数据创建json.js文件来存放形策知识题库(好友挑战和挑战赛)。

2、通过module.exports和require分别把json.js文件导出和导入数据。形策知识有两套模块,使用app.globalData.questionList[“挑战赛”]代码来选择题型。

3、实现选择答案和自动出题功能,在test.wxml文档里编写程序的出下一题、答案和结束答题的功能。分别由test.wxml代码分析图4.13代码分析图和代码如下。

图4.13test.wxml代码分析

16a93b8ee5b9ff632bd6b89418c8575b  小程序的答题和自动出题的实现代码如下:

*下一题/提交按钮

nextSubmit:function(){

//如果没有选择

if(this.data.chooseValue[this.data.index]==undefined||this.data.chooseValue[this.data.index].length==0){

wx.showToast({

title:’请选择至少一个答案!’,

icon:’none’,

duration:2000,

success:function(){

return;

}

})

return;

}

//判断答案是否正确

this.chooseError();

//判断是不是最后一题

if(this.data.index<this.data.questionList.length-1){

//渲染下一题

this.setData({

index:this.data.index+1

})

}else{

//跳转到结果页

}

}

  第5章系统测试

  5.1系统测试

每个系统完成后,必须由专业的测试程序员进行检测,检测是本次程序在研发过程中必须要做的流程。如果没有经过严格的测试就投入到运行当中,那么将会造成很多不良问题。只有通过合理而完善的测试方法才能使系统达到预期目标。这对于提高软件可靠性有很大帮助。严格的测试可以使系统检测到其中的漏洞与不足,提高软件的使用价值,也可以使消费者或用户获得最完美的使用体验。在微信小程序的形策知识对战平台测试中采用黑盒测试,为了能够保证系统的稳定性,从而对本系统的各个功能进行检测。适时的试验可以使系统避免失效。

5.2测试的准则

为能设计出合理的指导测试,软件工程师们需要全面掌握和恰当使用指导测试的基本准则。以下五点所述主要的检测标准包括。

(1)尽早地和连续不断地完成软件测试。将测试贯彻到了软件开发工作的全部流程之中,却并没有完全将测试过程看成是一个单独阶段。也因此,在软件开发工作的每一个环节中都有可能出现许多无法意料之外的重大问题,其造成原因也有许多,如程序自身的重复性与抽象性。

(2)软件开发者应该避免去检测自己的程序,如果有专业的测试人员的话,应该让检测公司或是第三方检测组来加以检测。但是这并不代表着程序员就无法测试自己所编写的软件,相反,这会更激励程序员进行自己测试,因为如果测试由其他人员自己完成很可能也会比较客观、合理,而且也比较易于取得成功。而且由专业测试程序员自行对软件进行的测试通常也会比较针对性强和有效率。

(3)对于测试系统的实际需求必须要有合理的态度:首先,实际需求必须由测量输入信息与期望的产出成果构成,其次,在产品设计测试用例时,不仅要考虑正确的使用要求,还要注意不合理的使用要求。由于软件系统在实际工作中,经常不按照常规的操作方法,而发生了一系列错误或者巨量的差错输入工作,这就必然会造成软件系统在短时间内无法作出正确的反映,这就很容易产生各种问题,轻则输入输出错误,重则应用软件系统直接崩溃。

(4)要充分地注意在软件检测中经常出现的群集现象。在软件测试流程中,最怕系统出现了一些错误并解决以后,就可以不再继续进行软件测试了。反而是这段程序往往是错群集中的地点,因此对这段程序要加强管理并进行重点检测,以增加对软件测试的准确率。

(5)要严密遵照试验软件的各项工作计划,尽量消除试验的任意性,防止遗漏和重复性和不合理的工作的情形。在严格遵循上述准则的基础上开展软件测试,才能以最小的时间和人力查找软件产品中的所有问题,进而实现了提高软件产品质量的目的。

5.3测试用例

(1)用户登录模块:

用户登录测试用例如表5.1。

895f74342353c2c7f42fd0b6f9a524cf

(2)挑战赛模块:

挑战赛测试用例如表5.2。

4d1197312982327cec42fcbe21ef516f

(3)好友挑战模块:

好友挑战测试用例如表5.3。

e6c7661b6cd2fb64d863d658a53acf48

5.4测试总结

通过对整个系统运行反复的测试,系统基本实现了用户登录小程序、获取用户信息、本地存储和有限时间内自动出题;实现应用程序的用户界面;能够利用互联网实现远程对战。展现出该小程序的基本功能。在测试过程中对微信小程序形策知识对战平台的细节方面所存在的缺陷加以更新维护,微信小程序形策知识对战平台运行的平稳性能初步达到要求,微信小程序形策知识对战平台的运行结果较为良好。但是在整个微信小程序的形策知识对战平台中构思方面仍然存在着一些缺陷,这些问题还需要在今后逐个升级和维护。与此同时,该小程序还可以进一步扩展应用,进一步提供给使用者更好的体验与使用的便利。使用开发工具者完成所有测试如下图5.4。

图5.4测试完成图

7bc9efae0dbd94354c6c6f9c5c5d8776  第6章总结

本形策知识对战平台的设计方案采用了微信等小程序开发技术,具备可扩充和易使用的优势,并能够适应现代学习形策知识的基本要求。在系统的设计和研发过程中,编码实现了微信小程序的功能,在整个流程中我对WXML、WXSS、JavaScript以及微信小程序开发等技术知识都有了较为深刻的认识。

本文所设计的基于微信小程式的形策知识对战平台,具备了应用简便、即时性强的优点,对微信小程序系统维维护、更新也非常简单。系统工作环境平稳、安全,基本满足了对形策知识与对战的信息要求,基于微信小程序的形策知识对战平台系统可扩展的地方还不少,在系统升级维护方面也具有很广阔的应用发展前景。

本次小程序不足和需要维护的部分:

(1)希望在后期对系统的功能分析结合实际,在实际中去考虑和实现本系统一些细节的功能。

(2)本系统也可不断地进行其他功能的开发,并可不断地为小程序添加特色功能。在这个过程中,用户可以随时对小程序的内容进行更新。同时也可以把自己喜欢的小程序推荐给好友们一起玩,从而在不影响好友之间互动效果的前提下,增加了社交关系。

(3)本小程序题库较为匮乏,应扩充其他类型模块。系统界面需细节化,还需添加一些趣味功能,如:沟通界面:使用者答题结束,二者可通过沟通界面,进行错题分析同时也增加友好社交。

 参考文献

[1]雷磊.微信小程序开发入门与实践[M].北京:清华大学出版社,2017.

[2]张翔.微信小程序:分享微信创业2.0时代千亿红利[M].北京:清华大学出版社,2017.

[3]沈炜,徐慧,汤倩.Mysql数据库编程技术与实例[M].北京:人民邮电出版社,2015.114-226.

[4]冯晓强,程晓昕.基于MVC模式的网上单词查询系统的设计与实现[J].现代计算机:专业版.2019(7):177-180.

[5]刘玉佳.微信”小程序”开发的系统实现及前景分析[J].信息通信,2017(1):2.

[6]孟祥双.前后端分离式WEB应用开发研究[J].电子元器件与信息技术,2019(6):4.

[7]李宇,刘彬.前后端分离框架在软件设计中的应用[J].无线互联科技,2018,15(17):41-42.

[8]彭守镇.微信小程序应用探究[J].信息与电脑(理论版),2018(22):22-23.

[9]薛梦雅,石雨萱,韩雨坤.小程序冲击下的手机APP功能整合方向探析[J].传媒论坛,2018,1(20):21+23.

[10]王萌,田杨,李宁宁.组件化WEB前端架构设计与实现[J].电脑知识与技术,2018,14(30):77-79.

[11]张云苑.JavaScript在动态网页设计中的应用[J].科技信息,2017(5):23-24.

[12]杨家炜.基于Spring Boot的web设计与实现[J].轻工科技,2016(7):86-89.

[13]朱二华.基于Vue.js的Web前端应用研究[J].科技与创新,2017(20):119-121.

[14]林槑.微信小程序能否成为取代App的神器还得看自身造化[J].商业文化,2017(04):73.

[15]孟程,黄建国.MySQL数据库课程教学的探索与研究[J].科技创新导报,2019,16(15):190-191.DOI:10.16660/j.cnki.1674-098X.2019.15.190.

[16]周书强.JavaScript在动态网页设计中的应用[J].计算机产品与流通,2018(10):20.

[17]石新华,李沛沛.Java与脚本语言的整合与应用[J].光盘技术,2009(08):35-36.

[18]汪加楠,崔紫光,吴亮等.基于微信小程序的甲骨文学习系统设计[J].电脑编程技巧与维护,021(04):55-57.DOI:10.16184/j.cnki.comprg.2021.04.020.

[19]黎子晨.在集群环境中对象关系模型缓存一致性设计[J].物联网技术,2017,7(08):44-46+48.DOI:10.16667/j.issn.2095-1302.2017.08.011.

基于微信小程序的形策知识对战平台的设计与实现

基于微信小程序的形策知识对战平台的设计与实现

价格 ¥9.90 发布时间 2024年4月4日
已付费?登录刷新
下载提示:

1、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“文章版权申述”(推荐),也可以打举报电话:18735597641(电话支持时间:9:00-18:30)。

2、网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。

3、本站所有内容均由合作方或网友投稿,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务。

原创文章,作者:1158,如若转载,请注明出处:https://www.447766.cn/chachong/208204.html,

Like (0)
1158的头像1158编辑
Previous 2024年4月4日
Next 2024年4月5日

相关推荐

My title page contents