王志远 高海洋
桂林电子科技大学 广西桂林 541000
关键词:微信小程序;高校信息;数据处理
引言
“七分高考,三分填报”。对于广大高考学生而言,高考仅是预选,而高校填报才是决赛。据调查,61.5%的学生及家长对于全国高校的专业及相关信息都不太了解,而70%以上的学生同样对自己选择什么专业有所迷惘。不少学生只有在进入了大学之后才发觉自己所选专业与自己兴趣志向格格不入,很难满足自身发展。而通过查询相关校园网站及论坛信息效率较慢,在当积极倡导数智化发展各类小程序普及的今天,高校信息查询的综合门户依旧出于空白。本文通过使用使用微信小程序搭建系统前台,构建“互联网+高校信息”查询系统,通过对高校数据的整合处理并集中化呈现,实现高校信息分类查询、校园信息介绍、分数线展示以及专业说明等功能。
1 微信小程序的发展过程
1.1 微信小程序发展历程
2016年,微信正式发布了小程序及相关开发工具,开发者通过微信提供的相关文档及工具,能够快速进行小程序开发。它即用即删的方式,能够让客户停留在微信界面的基础上实现生活中各类需求。小程序以它的无需安装、无须卸载、用完即走的特点,优化了用户的操作流程、减少了软件安装的繁琐、同时降低了手机内存的负担,为所有用户提升了感知。
小程序的功能已经发布,在为微信带来了大量的活跃用户外,也实现了“连接一切”的目标。而在Facebook与Twitter,也通过对信息截留以及轻度继承,也实现了与小程序相似的功能。可以说,在信息化发展的战略规划上,这几大社交软件巨头的思路是所见略同的。可以说,在未来很长的一段时间内,轻量级小程序的热潮将延续持久。
1.2 微信小程序的运行原理
微信小程序的框架包含了视图层以及逻辑层。其中视图层主要用来进行页面渲染,而逻辑层主要负责小程序内的逻辑处理以及数据传输。而视图层与逻辑层是单独运行互不干扰的,只有当程序运行时,通过微信小程序中的JSBridage作为中间桥梁,才能够将相关数据与请求进行交互,从而实现微信能力、离线存储以及网络请求等多类功能。
小程序不存在重启,当小程序退出后,微信客户端会自动后台将最近一次使用的小程序进行挂载,只有在超过一段时间后,微信后台才会自动将小程序进行销毁。
2 高校信息查询小程序
高校志愿填报是每个高考生必经的一次选择,目前我国的高校信息综合门户主要以网站或APP小程序作为载体提供相关信息查询服务。但由于高校志愿填报的时效性不长,仅在高校志愿填报期间使用量较大,同时所面向客户主要是高考考生及其家长,在当前智能手机普及的时代,下载APP及网页浏览的便捷性远不如手机小程序,而在小程序中,高校信息查询领域仍然属于空白,因此,在此背景上将高校信息查询实现轻量化微信小程序呈现,将具有一定的前瞻现实意义。
2.1 高校信息查询系统架构及技术选型
本系统主要以微信小程序API作为技术底层实现工作进行系统研发。高校信息查询系统主要由系统应用的表现层、网络层、功能层以及技术层4各层面组合合并呈现的。
通过小程序开发API作为技术层支撑,将微信小程序界面作为前台呈现,通过通信网络将相关信息与功能层交互,实现高校信息查询小程序的校园筛选、搜索以及校园详情介绍的功能展示。
2.2 高校信息数据处理
所有高校信息都是从全国各大高校网站及综合门户网站收集整理,为了加快数据的处理速度,本文通过python中concurrent.futures模块,制定多线程任务脚本进行数据处理。同时相关数据收集后统一由PgSQL进行存储。PostgreSQL最早诞生于1989年,是由加州大学伯克利分校计算机系所研发的关系型数据库管理系统,以其作为一个轻量级数据管理系统,能够满足大部分数据存储读取需求而得名。
所有的高校数据都通过university和province两个表进行存储关联。
university用于存储高校信息,包括编号、院校名称、所属省份、文理分科、录取批次、年份以及录取平均分七个字段。同时province用于存储各个省份某一年的各批次录取分数线,用于关联大学基本信息表,从而实现筛选功能。其主要包括序号、年份、省份、文理科、批次类型以及最低录取分数线共6个字段,同时为了展示高校详细信息,通过设计Schoolinformation表,实现对高校详情的存储与展示。Schoolinformation主要包括大学概况、历史录取等多个信息进行存储。在完成了数据梳理与存储后,为了实现小程序信息交互的快速响应,通过使用微信官方自带的后台云开发实现数据管理。云开发能够为开发者提供完整的云端服务,减轻后台维护的压力,从而实现轻量级核心业务的开发实现,一来能够实现程序的快速迭代,同时还能够加强数据可移植性以及稳定性。
2.3 高校信息查询系统开发与实现
高校信息查询系统主要通过瀑布模型的软件设计模式进行系统研发。瀑布流模型是Royce在1970年所提出的,在结合了之前软件研发生命周期的特点上,对软件生命周期进行了一定的顺序编排。瀑布流模型在前阶段的功能研发完成后,才能过渡到下一阶段的功能研发,通过逐步向下递进实现,最终实现了软件全过程的研发,从而得到了整个软件产品。在瀑布流设计过程中,只有当某一阶段的软件设计完成后,经过严格测试评估,才能够进入到下一环节的设计实现。该系统主要分为3个模块:首页登录模块,高校信息筛选查询模块以及高校详细信息模块。
(1)首页登录模块
在微信开发工具中建立微信小程序项目,对app.json文件进行配置。通过声明pages原始明确小程序页面,以及对windo进行配置,设置默认颜色。
创建index文件夹,设置index相关配置文件,包括js运行脚本,json配置,以及wxml前端内容展示的设计以及wxss文件的前端样式配置。在首页登录模块,通过腾讯API中的userAvatarUrl元素自动获取微信头像,同时设置“我要查询”button通过监听,当用户点击该按钮后,通过wx.navigateTo的方法,自动跳转到service页面,即可实现登录查询高校信息功能。
(2) 高校信息筛选查询模块
高校信息筛选查询模块主要通过Service文件内相关配置实现。通过设置data元素,实现筛选功能的设置,首先筛选中包括地区/院校的筛选,对地区及院校设计三级子菜单。地区中二级子菜单为新课标一卷、二卷、三卷以及自主命题,三级子菜单为相应地市;院校中二级子菜单为各个地市,三级子菜单为对应地市的学校。通过quyu {{qyopen ? 'slidown' : 'slidup'}} {{qyshow ? 'disappear':''}}实现三级菜单筛选,并通过设置select2与select3相关参数,实现菜单的二级与三级的设计。
同时对文理科进行筛选功能设计,并提供985、211、第一批次、第二批次、第三批次以及高职专科的功能筛选,通过temp temp2 contentCenter {{nzopen ? 'slidown' : 'slidup'}} {{nzshow ? 'disappear':''}}实现文理的筛选与数据的调用。
同时对展示的数据启动监听,通过wx.navigateTo的方法将页面跳转到servicedetail页面,用于展示高校详细信息。
(3)高校详细信息模块
在高校详细信息模块,通过setData方法实现对schoolname、detail、starttime、web、
Address、score等相应信息的设置,同时在servicedetail.wxml文件中通过对servicedetail.name等相应字段进行调用,实现相关信息的展示。具体如图八所示。
2.4 系统测试
该系统设计主要依存与微信小程序开发工具进行功能研发,微信小程序的编译预览功能能够让程序在修改保存后,迅速渲染出最新模板。同时微信小程序开发工具后台配置能够让程序自动适配给类手机屏幕,避免由于分辨率不一致而导致视觉化差异。同时客户能够通过手机或者电脑直接预览系统情况,大大减少测试时间。该系统在经过筛选功能黑盒测试后,对于地区/院校、文理科以及批次的功能能够正常运行,同时相关院校能够正常展示。同时在通过微信小程序审核后能够正常发布。
3结束语
通过涉及高校信息查询系统,将高校信息整合至轻量级小程序中,该系统可以实现院校信息筛选以及校园详细信息阅读功能。在当前信息快速化的社会,高校信息查询小程序能够更快更全地为高考学生及家长提供便捷的查询服务,具有一定的研究意义。