APP下载

基于PhoneGap跨平台框架的计算机实验室自主排课系统的设计

2015-12-11刘毅俞炘

教育教学论坛 2015年31期
关键词:实验室管理跨平台

刘毅 俞炘

摘要:本文总结了目前计算机实验室自主排课系统的主要模式,针对当前各类移动终端的普及,为了进一步提高计算机实验室的服务水平和管理效率,利用目前最新的跨平台开发框架PhoneGap,结合使用HTML5等新技术,设计了一套移动计算机实验室自主排课系统,实现了计算机实验室自主排课从PC端到移动端的转移,系统使用的离线缓存机制,提高了系统的健壮性和用户体验。

关键词:实验室管理;排课系统;跨平台;PhoneGap;HTML5

中图分类号:G647 文献标志码:A 文章编号:1674-9324(2015)31-0252-03

一、引言

从运行方式的角度来看,目前高校计算机实验室的排课系统主要有两种:一种是将计算机上机课和教室课程混合在一起,由教务系统的排课系统通过智能算法统一来排。这种方式需要教务系统掌握计算机实验室的详细情况,包括机器数、操作系统、软件等。其优点是不需要人干预,完全自动实现排课。其缺点是不容易实现。首先计算机实验室的操作系统、软件每隔一段时间可能有更新,需要教务系统能够及时的同步相关信息,而目前大部分教务系统都是独立运行的,并没有与计算机实验室连接。其次,对于自动排课来说,计算机实验课不同于普通的教室排课,不仅要保证时间、地点、人数的统一,而且对于不同课程所使用的软件也要分别对应,增加了系统自动排课的难度。因此,目前的智能排课系统很难做到能够完全满足智能排课需求。第二种是计算机实验课和教务系统分开排的情况,实验课的编排由任课教师自主到计算机实验室预约完成。这种方式的优点是技术上比较容易实现,同时对于教师、学生或者机房来说比较灵活。笔者所在的江苏大学计算中心便是这种方式,因此本文主要讨论第二种方式。

从系统实现的架构来看,自主式的计算机实验室排课系统主要有两种一种是C/S(Client/Server)架构,另一种是B/S(Browser/Server)架构。C/S架构的优点在于事务处理能力强、响应速度快;缺点在于系统部署、维护、升级需要在每台客户端进行,增加了难度和成本。B/S架构由于是基于网页浏览模式的,只要有浏览器可以上网就可以使用,其优点是系统的部署、维护和升级只要在服务器端就可以完成,不需要在客户端操作。因此对于排课系统这种对实时性要求不高的系统来说,B/S架构比C/S架构具有更大的优势。

现有的排课系统绝大多数都是用于PC端的,只能运行在PC机上,即使是B/S架构的,通过浏览器访问系统也不能适应移动端如手机、平板电脑的屏幕大小。而随着无线通信技术及嵌入式技术的发展,通过智能手机、平板电脑上网越来越成为一种主流的上网方式。开发移动端的排课系统,让老师随时随地可以预约计算机实验课,学生可以随时随地查询计算机实验课表,将大大节省师生的时间,对于提高计算机实验管理的效率具有重要的意义。

本文将从上述思想出发,针对目前计算机实验排课系统的问题,运用最新的跨平台开发技术,设计一套可以在移动端如手机、平板电脑运行的自主排课系统,以进一步提高计算机实验室的服务水平和管理效率。

二、移动应用开发

(一)移动应用开发简介

移动应用开发就是在移动设备(如智能手机、平板电脑等)上开发应用程序。由于目前不同的移动设备往往基于不同的操作系统平台,若要让应用程序在不同的移动设备上运行,就需要分别在相应的平台上开发不同版本的程序。目前主要的移动操作系统平台有:安卓(Android)、iOS、Windows Phone、黑莓(BlackBerry OS)等。在不同平台上,开发应用的编程语言或者开发环境都是不同的,对于开发者来说,这无疑大大增加了开发的难度和维护成本。如下表1是目前最流行的四种操作系统所使用的开发语言。

(二)跨平台开发及PhoneGap

一款移动应用软件为了在不同的移动终端上需要进行多次的开发,大大增加了开发、运营、维护的成本。为了解决这一问题,跨平臺开发技术应运而生。利用跨平台开发技术,开发者只要开发一次应用便可以让程序在不同的平台上运行,开发者不再需要为不同的移动终端平台重复开发,以大大降低开发成本和难度,缩短开发周期。根据实现方式的不同,现有的跨平台开发技术主要通过两种技术来实现,跨平台运行引擎技术和跨平台应用编译技术。跨平台运行引擎技术主要是通过安装在目标设备上的引擎来屏蔽终端底层操作系统差异来实现,开发者开发应用部署或编译打包后,用户下载到目标设备上由引擎解释执行;跨平台应用编译技术则通常采用一种标准开发语言开发应用,应用开发完成后由代码编译器针对不同目标终端平台分别进行编译,生成有针对性的可执行程序。

跨平台开发技术的优越性,也吸引了很多公司来开发跨平台开发工具。根据VisionMobile 2012年移动开发者跨平台开发工具报告,现有的跨平台开发工具包括Flex、Titanium、AppMobi、PhoneGap、MonoTouch/Droid等,其中被用的最多的是PhoneGap。

PhoneGap是Adobe公司的一款基于WEB的开源跨平台开发框架,通过PhoneGap框架提供的API开发者可以非常方便调用移动设备的核心功能,包括GPS、摄像头、重力感应、陀螺仪等功能。利用PhoneGap提供的开发平台,开发者使用HTML5、JavaScript和CSS就可以快速开发出跨平台的移动应用程序,并发布到Apple Store、Google Play等各个平台应用商店。目前PhoneGap已支持几乎所有主流移动操作系统包括Android、iOS、BlackBerry、WindowsPhone、Symbian等。

PhoneGap是作为一套优秀的跨平台开发框架,具有如下特点:(1)开源、免费。(2)支持主流多数移动平台,支持云端编译功能编译成各种平台下的应用。(3)基于HTML5标准的手机应用框架,支持HTML5、CSS3、JavaScript等Web技术。(4)提供非常丰富的API,它们包括Accelerometer移动感应器、Camera摄像头、Notification等。(5)提供硬件访问控制,比起传统的Web程序,PhoneGap提供了一些列的JavaScript类,可以直接访问硬件,比如加速、相机、指南针、GPS、文件访问等。

三、系统设计

(一)系统体系结构及功能

本文设计的跨平台机房预约系统也是一种基于B/S结构的系统。根据用户角色的不同,系统包含了三个主要功能模块,分别是访客模块、教师模块和管理员模块,如图1所示,登录界面提供不同角色的选择引导用户进入相应模块。下面分别介绍这三大模块的主要功能。

1.访客模块。访客指的是那些仅仅想查看实验室排课情况、实验室公告或者计算机有关信息的人。访客不用登录系统,可以查看本学期的实验室预约情况,实验室公告(如实验室否有考试等活动通知),实验室不同教室计算机的配置、软件等。访客的功能方便学生、教师等快速的了解实验室的状况。

2.教师模块。教师模块主要有五部分功能。①预约机房。教师可以根据机房状况(机房是否空闲、机器配置、所装软件)和课程情况预约相应机房。②班级管理。教师可以增加删除自己所带的班级。③课程管理。教师可以增加删除自己所带的课程。④个人信息管理。教师可以修改自己的密码、联系方式等个人信息。⑤统计查询。教师可以统计查询自己预约或历史上机情况,导出自己的课表。

3.管理员模块。管理员由计算机实验室的系统管理担任,管理员模块主要包括如下功能模块。①机房信息管理,包括计算机机房的数量、计算机的配置、计算机上所安装的软件等信息的更新维护。②人员信息,主要包括新注册用户的审核,教师密码的初始化等。③公告管理,主要是有关公告通知的发布。④统计查询,主要是针对所有机房,机时、费用、人员等相关新的查询、统计和汇总,可以将结果导出到EXCEL表中,方便统计和报告,为实验室管理提供数据支撑。⑤系统设置模块。

(二)关键技术实现

本系统的实现使用最新的跨平台开发框架PhoneGap,前端页面使用HTML5、CSS3、Javascript,为了兼容现有的桌面版的排课系统,后台数据库没有变化还是使用现有的SQL Server 2008。

运行在移动终端的程序和PC端的程序最大的变化就是网络不稳定。一般情况下在程序运行过程中如果出现网络中断的情况,可能会导致程序界面锁死、程序崩溃等问题,因此如何保证在网络状况不佳的情况下能够保持系统的稳定运行,是无线应用APP开发的一个关键问题。

本系统使用了离线缓存机制,在网络正常时,将用户的个人排课信息读取并保存在本地緩存文件中,正常情况下程序直接通过网络实现数据库的增删改查操作。网络中断时,用户的增删改查操作先记录到本地缓存文件,等到网络通畅再与数据库进行同步。离线缓存机制如图2所示。

四、结语

在智能手机、平板电脑等移动设备日益流行的今天,各个系统在移动端的开发是目前软件开发的一个流行趋势。大学计算机实验室是培养学生实践能力的一个重要基地,开发移动计算机实验室排课系统,方便教师、学生的查询预约,可以提高计算机实验室的服务水平和管理效率。本文利用目前最新的跨平台框架PhoneGap开发了一套移动计算机实验室排课系统,实现了不同智能终端平台上的系统的运行,从而实现师生随时随地进行排课预约与查询等工作。系统使用的离线缓存机制确保了终端程序能够在网络环境不理想的环境下系统的流畅运行,提高了系统的健壮性和用户的体验。此系统的不仅可用于计算机实验室,通过修改也可用于教室或别的类型的实验室。

参考文献:

[1]孟昭霞.高校实验室创新性管理[J].实验室研究与探索,2013,(06).

[2]厉旭云,梅汝焕,叶治国,等.高校实验教学研究的发展及趋势[J].实验室研究与探索,2014,(03).

[3]宗薇.高校智能排课系统算法的研究与实现[J].计算机仿真,2011,(12).

猜你喜欢

实验室管理跨平台
跨平台APEX接口组件的设计与实现
关于实验室管理的研究
基于SSH架构的高职院校实验室管理系统的实现
论高校电子实验室的日常管理与维护
浅谈实验室管理与改革
基于QT的跨平台输电铁塔监控终端软件设计与实现
基于OPC跨平台通信的电机监测与诊断系统
基于B/S的跨平台用户界面可配置算法研究