Wireless Internet Technology
No.7April,2018
校园APP的开发研究与应用
高明福,张天园
(富奥汽车零部件股份有限公司研发中心,吉林 长春 130013)
摘 要:文章针对当前互联网技术发展、校园APP广泛应用的现象,分析了校园APP应该具有的功能,探讨了校园APP的实际应
用,总结了校园APP的意义。各校应根据学校师生以及各个部门的具体需求,开发出具有自己学校特色的校园APP。关键词:校园APP;互联网技术;系统设计;MVC随着互联网技术的发展,手机客户端逐渐成为各大公司追捧的对象。随着智能手机的发展,APP极大地丰富了智能手机的使用体验。APP间激烈的竞争,使得能否在正确的时间推出符合市场需求的 APP显得尤为重要,同时后续能否及时维护也是APP生命力的体现。
开源之所以火热,是因为源代码开放、信息共享和使用自由。互联网把全球人类的智慧汇聚在一起,迸发出不一样的火花。各种优秀的Web框架如雨后春笋般涌现,极大地缩短了WebApp的开发周期。Dojo亦为其中之一。Dojo提供了齐全的控件,如果需要,还可以结合CSS制定出个人所需的控件,甚至可以直接修改Dojo的源代码。本文设计的APP就是以Dojo为框架进行开发,完成相关功能设计。1 APP发展情况调研
随着苹果的iOS和谷歌的Android两大智能移动操作系统的流行推广,APP市场进入了一个高速发展的阶段,APP开发竞争残酷,各种类型APP层出不穷。校园APP的开发也越来越火热,APP的产业未来是相当乐观的。2 设计目的及意义
大学里存在丰富的课外活动,但是目前,通知渠道较为狭窄,电联和QQ群里发通知的方式会存在通知不到位的情况,使得部分同学错过某些精彩活动;当每次测试完成后,学生需要一台能登入校园网的电脑,才能进行成绩查询操作;每个学院发布通知时,学生在官网很难找到相应界面,还有部分同学很少关注校园官网,不了解本学院发生的事宜,这就造成了消息的不流通。本文设计的校园APP,将官网部分功能在手机端实现,这样不但可以为官网分担流量,也可以为师生提供便利,促进信息交互。3 设计原理和方法3.1 MVC简介
模型—视图—控制器(Model View Controller,MVC)是软件工程的一种软件架构模式,其最早由Trygve Reekskaug提出,是施乐帕多罗奥多研究中心在1980年代为smalltalk发明的一种软件设计模式。它是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,当改进和个性化定制界面及用户交互时,不需要重新编写业务逻辑。在一个逻辑的图形化用户界面的结构中,MVC用于映射传统的输入、处理和输出功能,其目的是为了实现一种动态的程序设计,简化后续对程序的修改和扩展,并使程序结构更加直观。
MVC是一个框架模式,它强制性地使应用程序的输入、
处理和输出分开。首先,它有低耦合性优点,因为它将视图
层面和业务层面相互分离,这样就可以实现改变视图层代码的同时而不需要重新编译运行原来处理数据的模型代码和联系视图和模型的控制器。其次,MVC还具有高重用性和可适用性的优点,随着技术的不断进步,人们的需求时刻发生着变化,但是最终处理数据的方式却可能不变,因此,不需要重新生成所有代码,只需要改变界面即可,因此使得使用MVC设计模式编写的代码处理起来更加游刃有余。再次,MVC有较低开发周期的优点,MVC使开发和维护用户接口的技术含量更低,大大缩短开发时间。
使用MVC应用程序被分成3个核心部件:模型、视图、控制器。它们各自处理自己的任务。MVC更多的是一种思想,小到代码组织结构,大到前端后端,它们均是运用了MVC的设计思想,使彼此相互独立,每一个模块的单独发展或开发,均不会影响到其他模块的正常使用。本文设计的校园APP,也是运用的MVC这种思想。3.2 开发工具简介
(1)Dojo:本APP采用Dojo开发框架,所有底层模块均已封装,因而只需在代码中加载Dojo解释器,调用Dojo提供的代码接口进行开发。
(2)文本编辑器:本APP中采用的是UltraEdit。(3)浏览器:本APP中采用的是Google Chrome。(4)处理Android项目的工具:本APP利用了集成了Android插件的Eclipse来进行最终APK文件的打包和发布。
(5)移动终端:Andoid手机一台,系统版本为5.0以上,根据cordova官网查询,API接口支持系统版本为5.0以上。3.3 可行性分析
经济可行性:现今智能手机广泛应用,市场价格低廉,符合大众消费水平,因此本APP的运行设备平台的范围是很广泛的。
需求可行性:由于本APP是针对校园而设计的,最终用户仅限于校园学生,因此人员基数约为学校在校生数。
技术可行性:几乎每款智能手机均具备浏览器,技术上不存在障碍。3.4 关键技术分析
在编写软件的过程中,有3个技术要点:(1)实现业务逻辑的分离,将UI显示与数据操作分割开来。(2)Dojo中的控件缺少下拉刷新功能,需要单独实现。(3)APP部分页面需要根据具体条目显示相关控件,所以,有些控件需要针对APP的需求在Dojo的开发框架下进行相应定制。
作者简介:高明福(1989— ),男,黑龙江七台河人,工程师,学士;研究方向:汽车电子。
- 54 -
第7期2018年4月
无线互联科技·软件透视
No.7April,2018
3.4.1 业务逻辑分离
业务逻辑分离,就是将程序中的数据处理和UI显示进行分离,下层的数据处理对于上层的UI显示而言是透明的,数据处理和UI显示之间通过接口进行交互。本APP利用html页面负责UI显示,而页面布局等内容则结合CSS层叠样式表,每个UI界面的数据处理单独写一个JavaScript脚本。而html页面和JavaScript脚本则通过Dojo的解析器联系在一起。本APP工作的前提,就是在主页面加载Dojo的解析器,即所有的UI显示、页面跳转、数据查询和数据传递的前提,是载入Dojo的解析器。
3.4.2 下拉刷新功能实现
每个页面在接受用户点击时,会传入一个手指的触点坐y)标(x,,当手指点住不放并进行下拉等操作时,浏览器还会传入一个坐标的位移量。本APP根据这个坐标值来判断点击控件和点击事件。对于下拉提示,本APP将一个Div块提前布置在html页面中。根据下拉状态在JavaScript代码中进行相应的控制,即当满足条件时,切换状态,当事件结束后,更新状态。本APP将下拉提示控件默认设为隐藏状态,同时设置一个事件监听器,监听屏幕坐标状态,记录初始坐标位置值,当移动状态超过某个固定数值时,执行下拉提示控件显示状态切换函数,将下拉控件状态变成显示状态,以此来实现下拉提示的功能。3.4.3 控件定制
Dojo虽然存在相关功能控件,但是对于APP界面的显示并不友好,因为Dojo为了提高适应性,控件库中现有的控件都是中规中矩的,也不会按照每个人的需求来进行相应实现,因此需要定制个人需要的控件。Dojo中为实现个人所需控件提供了相关框架,如“declare”“lang”“_ItemBase”和“_TemplatedMixin”,是Dojo提供的控件脚本,载入后,根据Dojo的规则,可以实现定制功能。4 系统设计4.1 系统流程
用户点击图标进入APP后,为了减弱突然打开APP时的突兀感,进入APP后首先展示的是APP的splash界面;两秒后,进入登录界面;登录后,进入主界面。
主界面包含3个子界面:第一个子界面,负责通知学校
重大消息,包括一些热门的新闻,每一条内容均可点击查看
详细信息。第二个子界面,是本校各个学院的显示条目,当用户点击相应条目后,会进入各个学院的消息通知界面,每个学院可以根据本学院的相关情况发布相应消息,该学院的学生则可以通过这个来查询所在学院发生的相关事宜。第三个子界面,是用户个人中心,可以查询本人相关的信息,例如正在学习的课程、关注的课程等,还有老师下发的上课通知等信息。
4.2 模块设计及其功能
根据设计要求,系统分为以下几个主要模块:splash模块、登录模块和主界面。主界面包含3个子模块:学校消息通知模块、学院列表模块和个人中心模块。
(1)splash模块。用于启动APP后所进行的视觉缓冲,避免APP显示过于突兀。在实现上:定义一个页面,该页面打开后开始计时,在某个固定时间后,跳转到登录页面。
(2)登录模块。用户在登录界面可以填写其账号和密码,作为进入主界面的凭证。
(3)主界面。①学校通知模块:在该模块中,用户可以浏览学校发生的一些热门事件以及重要消息通知,每一条消息用户均可以点击查看详细内容。本模块还具备历史浏览查询功能,用户可以看到自己浏览过的消息。同时历史浏览查询界面右上角还可以查看消息通知,可以看到老师发布的一些通知,起到快速沟通的作用,方便消息的流通。②学院列表模块:该模块是本校各个学院的条目列表,每个条目下面都有各个学院对应的消息通知,学校通知模块定位的是学校级的大事件,而本模块则由各个学院发布一些本学院相关的通知。③个人中心模块:个人中心包括关注的课程、在学习的课程和已经完成的课程等相关信息。成绩查询功能可以查询学校最近发布的成绩和个人的历史成绩。信息中心包括老师和学院的一些通知,方便同学了解学院最新动态。5 结语
随着移动互联网和智能手机的普及与发展, 人们逐渐习惯使用移动应用客户端上网的方式,手机APP受到广大用户的追捧和喜爱,手机APP的使用群体也越来越庞大。把手机APP应用在校园各项工作中,更是一种新鲜手段, 充满着创新与挑战。
[参考文献]
[1]王畅.手机APP在高校游戏化教学中的应用研究[J].吕梁学院学报,2016(1):84-86.[2]肖云鹏,刘宴兵.Android程序设计教程[M].北京:清华大学出版社,2013.[3]张荣.Android开发与应用[M].北京:人民邮电出版社,2014.[4]姜翠.校园APP应用探讨[J].信息通信,2015(11):266-267.
Research and application of campus APP
Gao Mingfu, Zhang Tianyuan
(Research and Development Center of Fuao Automotive parts Co., Ltd., Changchun 130013, China)
In view of the development of Internet technology and the widespread application of campus APP, this paper analyzes the Abstract:
functions of campus APP, and discusses the practical application of campus APP. This paper summarizes the significance of campus APP. Each school should develop the campus APPs with its own school characteristics according to the specific needs of the teachers and students of the school and the departments.
campus APP; Internet technology; system design; MVC Key words:
- 55 -
因篇幅问题不能全部显示,请点此查看更多更全内容