基于移动终端的课程学习论文.docx
《基于移动终端的课程学习论文.docx》由会员分享,可在线阅读,更多相关《基于移动终端的课程学习论文.docx(61页珍藏版)》请在冰豆网上搜索。
基于移动终端的课程学习论文
(此文档为word格式,下载后您可任意编辑修改!
)
北京师范大学珠海分校
本科生毕业论文
论文题目:
基于移动终端的课程学习
2014年04月06日
基于移动终端的课程学习
摘要
现如今,随着移动互联网与无线通讯技术的发展,基于GoogleAndroid开源平台的智能移动终端设备在世界范围内广泛普及。
但是针对用户现有的可携带设备,怎样为用户和行业提供更好的服务,是未来移动互联网的发展方向之一。
目前,在校大学生作为智能移动终端的中坚占有者,他们学习自觉性和能动性较高,开发一款基于移动终端的课程学习应用可以帮助他们在任何时间任何地点开展学习。
因此,基于移动终端的课程学习研究是顺应时代和用户需求的。
本系统使用Eclipse与AndroidSDK作为开发工具,采用SQLite嵌入式数据库作为后台的数据服务支持,实现了书籍阅读、资源下载和网上冲浪等主要功能。
最终完成的移动终端课程学习系统界面美观大方、主题明确,能够满足用户获取丰富、准确的学习内容的需求,同时在学习过程中提供即时的学习支持,将学习与生活融为一体。
关键词:
移动终端;课程学习;Android;Eclipse;SQLite
ResearchofCourseLearningBasedonTheMobileTerminal
ABSTRACT
ThesystemusesEclipseandAndroidSDKasthedevelopmenttool,usingtheSQLiteembeddeddatabaseasthebackenddataservicesupport,implementsthebookstoread,resourcesdownloadandwebsurfing,andothermajorfeatures.Thesystemenjoysbeautifulandsimpleinterfaceandclearthemesoastomeetusers’demand,cansatisfytheusergetsrich,accuratelearningcontentdemand,whileprovidingreal-timelearningsupportinthelearningprocess,theintegrationoflearningandlife.
Keywords:
TheMobileTerminal;CourseLearning;Android;Eclipse;SQLite
前言
21世纪是知识经济迅猛发展的时代,随着经济的全球化,计算机技术以其特有的形式改变着经济、科技和社会发展的走向,推动人们自身思维方式和行为模式的创新。
并且伴随着智能手机与移动互联网的迅速发展,各种各样的移动终端产品就是也是在这个大背景下的新兴产物。
Android操作系统是当今世界范围内,应用最为广泛和技术最为成熟的智能操作系统之一,它的产生与发展,为我们的学习与生活带来了极大的便利。
与此同时,如何基于用户现有的可携带设备,为用户和行业提供更好的服务,是未来移动互联网的发展方向之一。
当代大学生中智能移动终端设备的保有量很高,如何把移动终端同他们的日常生活学习联系起来,开发出一款适合随时随地都可以进行学习的移动终端课程学习应用程序是很有必要的。
与传统移动学习设备相比较,扩大了学习者的应用范围,没有了一些硬件条件与环境的限制,而且移动终端体积小、携带方便,学习者可以按照自己的意愿在自己方便的时间和地点,学习自己希望获得的知识,为学习者提供灵活的学习环境,将学习与生活融为一体。
基于移动终端的课程学习系统经过系统分析、系统设计、系统实现以及测试改良阶段,已经可以投入正常使用,取名为“ibook”。
该系统的开发顺应时代发展的要求,同时兼顾了用户的需求和现实可行性。
最终的系统交互友好、主题明确、满足用户需求,可供用户获取丰富、准确的学习内容的需求,同时在学习过程中提供即时的学习支持。
本系统使用Eclipse与AndroidSDK作为开发工具,采用SQLite嵌入式数据库作为后台的数据服务支持,实现了书籍阅读、资源下载和网上冲浪等主要功能。
最终完成的移动终端课程学习系统界面美观大方、主题明确,满足用户需求。
第一章系统概述
1.1系统开发背景和意义
随着社会的发展,移动终端设备已经进入到了人们的日常生活当中,人们的生活、学习和工作越来越依赖于移动终端技术的发展。
信息化是当今世界经济和社会发展的大趋势,以智能手机与移动互联网为核心的信息技术已经成为拓展人类能力的创造性工具。
移动终端技术的发展历程以及目前的应用状况和发展趋势,可以充分地相信这项技术将极大的改变我们的生活、学习与工作方式。
1.1.1系统开发背景
随着移动互联网的迅速发展和移动智能终端的广泛普及,各种对应的应用、游戏等层出不穷。
如何基于用户现有的可携带设备,为用户和行业提供更好的服务,是未来移动互联网的发展方向之一。
GoogleAndroid系统因其开源特性以及良好的用户体验,近两年来已经风靡全球,智能手机、平板电脑及上网本等移动终端在高校校园里的普及率越来越高,人们渴望利用移动设备在教室、图书馆、室外广场随时随地,灵活高效地获取知识。
与传统移动学习设备相比较,这样一款移动终端课程学习应用程序扩大了学习者的应用范围,没有了一些硬件条件与环境的限制,而且移动终端体积小、携带方便,学习者可以按照自己的意愿在自己方便的时间和地点,学习自己希望获得的知识,为学习者提供灵活的学习环境,将学习与生活融为一体。
1.1.2系统开发意义
基于移动终端的课程学习系统支持当下主流的各式各样的Android系统手机、平板、上网本等移动终端设备,开启了一种全新的课程学习方式。
对该系统的研究及成功开发具有以下意义:
(1)集合了移动终端与移动互联网的优势互补,代替了传统的、木讷的课程学习方式,为用户提供了一种全新的学习交互体验;
(2)基于移动终端的课程学习应用程序,采用智能移动设备即可实现,不需要定制专用终端,具有较好的普及性,有利于课程学习的开展;
(3)具有零技术、零成本、零编辑、零形式的特点,用户不需要专业知识即可对课程学习系统进行各项操作,如书籍阅读、资源下载、网上冲浪等;
(4)系统各模块相对独立、各司其职,具有很好的使用健壮性,对于数据处理较为及时、准确;
(5)顺应时代潮流,移动终端与移动互联网盛行的今天,一款支持移动终端的课程学习系统是时代之产物;
操作简单、方便携带、不受时空与环境约束是基于移动终端的课程学习系统的最大特点。
它是时代进步和科技创新相结合的产物,各项功能符合用户需求,是一种全新的课程学习工具。
1.2系统设计目标
基于移动终端的课程学习系统使用Eclipse与AndroidSDK开发工具,利用SQLIte嵌入式数据库作为后台数据支持,支持当下主流的各式各样的Android系统手机、平板、上网本等移动终端设备,将学习者的学习与生活融为一体。
系统的设计目标是实现一个具有书籍阅读、资源下载、网上冲浪等功能的移动终端课程学习系统。
书籍阅读功能模块以学习课程的书本阅读为主,将需要学习的文本文件放在终端SD存储卡指定目录文件夹下,系统将自动识别并以列表的形式展示在移动终端,并且提供了设置书签与覆盖书签功能,方便学习者使用;资源下载功能模块主要是针对一些课程学习的多媒体材料的下载,例如音频、图片、PPT等文件的下载;网上冲浪功能模块方便学习者在学习过程中,对于有疑惑的问题可以进行网上搜索等。
最终实现的移动终端课程学习系统界面美观大方、主题明确,能够满足用户获取丰富、准确的学习内容的需求,同时在学习过程中提供即时的学习支持。
1.3设计实施
基于移动终端的课程学习系统的开发历经了六个月的时间,先后经过了需求调研、可行性分析、系统概要设计、数据库设计、移动终端设计与实现、系统性能测试与分析等五个阶段。
期间的工作主要分为以下几项:
(1)查阅了相关书籍及资料,深入了解Java语法、Android开发技术、Eclipse与AndroidSDK开发工具、SQLite数据库以及如何读取本地SD卡数据等技术。
为开发该系统做了技术性的准备。
(5)中期进行了业务功能的修改和完善,并完成了项目的测试。
对基于移动终端的课程学习系统的各个功能模块进行介绍,并以截图的方式,展现给用户,以便用户能很好的了解和使用本系统;
(6)最后根据所做系统及过程中收集的资料,完成毕业论文。
第二章开发工具及其环境
2.1Android开发技术
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
随着智能移动终端的迅速发展,直至2013年10月全世界采用这款系统的设备数量已经达到10亿台。
2.1.1Android系统架构
Android的系统架构和其操作系统一样,采用了分层的架构。
Android的系统架构如图2-1所示:
图2-1Android系统架构
从架构图看,Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。
(1)应用程序层
Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。
所有的应用程序都是使用JAVA语言编写的。
(2)应用程序框架层
开发人员也可以完全访问核心应用程序所使用的API框架。
该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性)。
同样,该应用程序重用机制也使用户可以方便的替换程序组件。
(3)系统运行库层
系统运行库层包括程序库和Android运行库。
程序库包含一些CC++库,这些库能被Android系统中不同的组件使用。
它们通过Android应用程序框架为开发者提供服务;Android运行库包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。
(4)Linux内核层
Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
Linux内核也同时作为硬件和软件栈之间的抽象层。
2.1.2Android流行的原因与优势
作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。
Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。
2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。
2011年11月20日,谷歌宣布启动了AndroidMarket应用审核、取缔、清扫行为,定期对电子市场上存在的不合格、低质量、违法恶意的应用程序进行清理。
2.2Eclipse开发工具
Eclipse是一款非常优秀的开源IDE(集成开发环境),基于Java的可扩展开发平台。
除了可以作为Java的集成开发环境外,还可以作为编写其他语言(如C++和Ruby)的集成开发环境,Eclipse凭借其灵活的扩展能力、优良的性能与插件技术,受到了越来越多开发者的喜爱。
2.2.1Eclipse的体系结构
Eclipse类似于“软总线”的体系结构,Eclipse的核心部分(PlatformRuntime)类似于一条“即插即用”的“总线”,它提供了许多的“插槽(扩展点:
extensionpoint)”。
其余的部分都可看成类似于外部设备的“插件(Plug-in)”,可随时加载和卸载。
可以说,在Eclipse平台中,几乎一切都是插件。
从架构上来讲,Eclipse基本采用的是“内核+核心插件+定制插件”的结构体系,除了内核部分外,其余部分均为插件,其体系结构如图2-2所示。
图2-2Eclipse的体系结构
2.2.2Eclipse平台的优势
(1)Eclipse是开放源代码的软件。
这意味着Eclipse不仅可以免费使用,还可以通过研究源代码学习世界上顶尖开发人员的编程技术,并可以共享遍布全球的开发人员所贡献的公共开放源代码库。
(2)Eclipse是真正可扩展并可配置的。
Eclipse采用插件机制,犹如一个花瓶,你可以随时向花瓶里面插花,也可以很容易将不再需要的花取出。
(3)Eclipse可以在多重平台上提供一致的特性集。
(4)Eclipse支持众多的开发语言而不仅仅是Java。
Eclipse只是给开发人员提供了一个能够扩展系统功能的最小核心,基于扩展点的插件体系结构使得Eclipse支持多种语言成为可能。
(5)Eclipse由业界领先者推出,具有强大的行业力量。
2.3AndroidSDK介绍
SDK(softwaredevelopmentkit)是指软件开发工具包。
被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
顾名思义,AndroidSDK就是指Android专属的软件开发工具包。
这个工具包不仅包括了Android模拟器和用于Eclipse的Android开发工具插件(ADT),而且包括了各种用来调试、打包和在模拟器上安装应用的工具。
AndroidSDK主要是以Java语言为基础,用户可以使用Java语言来开发Android平台上的软件应用。
通过SDK提供的一些工具将其打包成Android平台使用的apk文件,然后用SDK中的模拟器(Emulator)来模拟和测试软件在Android平台上运行情况和效果。
2.4SQLite数据库
Android系统提供了多种数据存储方式,有SQLite数据库存储方式、文件存储方式、XML文件的SharedPreference存储方式等。
本系统采用的是SQLite数据库存储方式,所以对其他的存储方式不展开说明。
SQLite数据库是一个关系型数据库,因为它很小,引擎本身只有一个大小不到300k的文件,所以常作为嵌入式数据库内嵌在应用程序中。
SQLite生成的数据库文件时一个普通的磁盘文件,可以放在任何目录下。
SQLite是用C语言开发的,开放源代码,支持跨平台,最大支持2048GB数据,并且被所有主流编程语言支持。
可以说,SQLite是一个非常优秀的嵌入式数据库。
2.5Android之MVC开发模式
MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑和数据显式分离的方法组织代码,将业务逻辑被聚集到一个部件里面,在界面和用户围绕数据的交互能被改进和个性化定制的同时而不需要重新编写业务逻辑。
MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
2.5.1Android开发中使用MVC模式的好处
从用户的角度出发,用户可以根据自己的需求,选择自己合适的浏览数据的方式。
比如说,对于一篇在线文档,用户可以选择以HTML网页的方式阅读,也可以选择以PDF的方式阅读。
从开发者的角度,MVC把应用程序的逻辑层与界面是完全分开的,最大的好处是:
界面设计人员可以直接参与到界面开发,程序员就可以把精力放在逻辑层上。
而不是像以前那样,设计人员把所有的材料交给开发人员,由开发人员来实现界面。
在Eclipse工具中开发Android采用了更加简单的方法,设计人员在DroidDraw中设计界面,以XML方式保存,在Eclipse中直接打开就可以看到设计人员设计的界面。
2.5.2MVC架构模型
MVC架构模型如图所示:
图2-3MVC架构模型
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分,通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分,通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
2.5.3MVC开发模式在Android开发中的应用
Android中界面部分也采用了当前比较流行的MVC框架。
Android的界面直接采用XML文件保存的,界面开发变的很方便。
在Android中控制器也是很简单的,一个Activity可以有多个界面,只需要将视图的ID传递到setContentView(),就指定了以哪个视图模型显示数据。
在AndroidSDK中的数据绑定,也都是采用了与MVC框架类似的方法来显示数据。
在控制层上将数据按照视图模型的要求封装就可以直接在视图模型上显示了,从而实现了数据绑定。
比如显示Cursor中所有数据的ListActivity,其视图层就是一个ListView,将数据封装为ListAdapter,并传递给ListView,数据就在ListView中现实。
第三章系统分析
系统分析的主要任务是将在系统详细调查中所得到的文档资料集中到一起,对组织内部整体管理状况和信息处理过程进行分析,它侧重于从业务功能全过程的角度进行分析。
系统分析的目的是将用户的需求及其解决方法确定下来,与此同时,系统分析所确定的内容是今后系统设计、系统实现的基础。
本文从基于移动终端的课程学习系统的可行性分析、需求分析、性能分析等三个方面展开说明。
3.1可行性分析
(1)技术可行性
基于移动设备的课程学习系统的开发采用成熟的Android开发技术,使用Eclipse与Android开发工具实现功能,利用SQLite作为移动终端的数据库,它是一个嵌入式数据库,适应于中小型规模的数据量需求。
因此,该系统的设计与开发在技术上和配备上的条件都是满足的。
所以,它在技术上是可行的。
(2)经济可行性
由于设计的要求比较低,当下主流的Android2.2以上系统的移动终端设备,不论是不同品牌、不同屏幕尺寸、不同配置的手机、平板、上网本等都可以作为理想的使用工具。
另外,现在Android智能移动终端的价格比较便宜,因此经济上是允许的。
(3)操作可行性
基于Android系统的位置监控系统界面设计简洁大方,操作流程方便,用户很轻松都能上手。
(4)硬件可行性
系统所采用的技术和平台都是比较成熟和已经发展数年的,目前的硬件配置一般都足以满足系统的运行要求。
系统的基本硬件要求:
具有主流的Android2.2以上版本的智能系统的手机或平板,并且需要支持外部SD读取功能,支持GSM网络或wifi。
综上所述,从经济方面,设计所带来的长远利益远远大于其开发成本,说明具有经济价值;从技术方面,系统开发所使用的工具载体都能够实现系统所需要的功能,说明在技术上是可行的;从用户操作方面,在不掌握任何专业知识的前提下,可以方便快速的上手,表明项目是具有广泛使用人群的。
因此,从可行性分析来看系统是可行的。
3.2需求分析
系统需求分析是现代软件工程应用于系统开发的一项重要环节,通过需求分析可以明确系统的各项需求和功能,根据这些需求和功能可以更好地指导下一步的系统开发和设计,避免了在设计之后对需求的变更而导致的大量返工。
3.2.1功能需求
在移动互联网与移动智能终端与人们的日常生活越来越息息相关的现状下,一款基于移动终端的课程学习系统对于学习者随时随地进行学习具有很强的实用性,也是顺应时代发展的需要。
基于移动终端的课程学习系统,采用智能移动终端设备即可实现,不需要定制专用终端,具有较好的普及性,有利于课程学习行为的开展。
基于移动终端的课程学习系统具备有易于使用、操作简单、便于携带等特点,根据对系统特点和功能的分析,可以得到本系统主要有如下功能:
(1)书籍阅读
书签:
书签功能包括添加新的书签和覆盖原有书签,集合了两种方式的优势,为用户阅读过程中的书签存储标记到所读位置,方便学习者下次阅读。
自动滚屏:
自动滚屏功能是学习者在阅读书籍的过程中,不需要通过手动滑动屏幕,直接通过“滚屏”按钮实现书籍自动滚屏,方便学习者的阅读。
(2)资源下载
资源下载为学习者提供了多媒体学习资源的下载。
多媒体学习资源主要包括学习视频、学习音频、课程PPT与图片等资源,为学习者全方位学习提供了便利。
(3)网上冲浪
网上冲浪功能是学习者在学习过程中遇到一些疑问,又不方便与同学展开讨论时,通过该功能可以直接在网络上进行搜索查找,方便了学习者对疑难问题的及时解决。
(4)系统反馈
系统反馈是针对学习者在使用过程中,对系统存在的一些问题或漏洞提出自己的意见和建议,为开发者后期的改进与开发提供了方向。
(5)使用帮助
使用帮助包括系统功能介绍与系统使用介绍,方便学习者更快的上手,开始课程学习行为。
(6)关于系统
关于系统向学习者提供了系统的版本信息、开发人员等相关信息。
3.3.2需求管理规划表
根据以上对系统的需求分析,可以得到一个更为简明扼要的系统需求管理规划表,本表罗列了系统的各项主要功能,并且对其进行分类,配有需求的描述,最重要的是给出了各个功能需求的优先级,优先级的高低表示了功能实现的迫切程度和必要程度。
优先级较高的代表该功能是系统很重要的功能,需要重点优先实现。
需求管理规划表具体如表3-1所示:
表3-1需求管理规划表
需求分类
需求名称
描述
优先级
功能性需求
书籍阅读
学习者可以阅读SD卡上的各类书籍
高
添加书签
方便学习者下次阅读
高
自动滚屏
不需要下滑手势实现书籍自动滚屏,方便阅读
高
资源下载
为学习者提供多媒体学习资源的下载
高
网上冲浪
学习者及时解决疑难问题
高
系统反馈
学习者使用中提出意见或建议
中
使用帮助
帮助学习者更快上手系统
中
关于系统
提供系统版本信息、开发人员等信息
中
退出系统
实现学习者退出系统功能
高
特征和前景
预算
平台开发成本控制在毕业设计范围内
低
系统目标
设计和实现基于移动终端的课程学习系统
达到毕业设计的目标和要求
高
非功能性需求
平台限制
基于Eclipse3.0、AndroidSDK以上
SQLite数据库
高
操作方式
全部操作都能基于Android智能移动终端进行
低
硬件需求
Android智能移动终端,系统版本2.2以上
CPU1.0GHz以上
中
3.3性能需求
3.3.1性能要求
基于移动终端的课程学习系统的性能要求归纳如下:
(1)实用性
为方便用户的使用,根据用户实际的需求,设计出功能齐全、操作简单、实用性强、充分满足用户的需求的课程学习系统。
(2)操作简单
系统适应于不同文化程度的用户,系统界面简约大方,不会出现审美疲劳,同时对系统的操作要求是尽可能简单易行。
(3)用户体验
用户在每次使用该应用时都能有始终如一的体验。
(4)自治性
本系统要求有自动处理数据的能力。
比如,自动删除没用的数据、大部分的数据应由平台自己来维护管理。
还应能自动处理数据库的连接和事务等。
(5)可靠性
本系统要求应用程序在任何时刻都能够保证精确数据的能力,比如,保持数据的原则性、持久性和一致性等。
(6)可用性
系统应处于开启和运行状态,且应无任何故障。
它应能捕获错误,应随