基于android教学平台下学生客户端设计与实现毕业设计论文(编辑修改稿)内容摘要:

Android 平台 及 SDK 介绍 Android 是 Google 公司推出的手机开放平台,和 iPhone 相似, Android 使用了 WebKit浏览器引擎,具有触摸屏、高级图形显示和上网功能,在手机上可以实现查看网站搜索、电子邮件、观看视频等功能,并且 Android 是一个对第三方软件完全开放的平台,开发者具有更大更广的自由度。 SDK 是指软件开发包( Software Developer Kit),是被软件开发工程师用来为特定软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具集合, Android SDK 即为 Android 开发中的软件开发工具包。 Android 平台的架构 Android 平台自底向上由以下四个层次组成: Linux 内核层、运行时库和其他库层、应用框架层、应用程序层。 如图 2 所示。 Linux 内核层: Android 底层是一个基于 Linux 内核来开发的独立操作系统,主要是添加了一个名为 Goldfish 的虚拟 CPU 以及 Android 运行所需的特定驱动代码。 该层用来提供系统的底层服务 , 包括安全机制、内存管理、进程管理、网络堆栈及一系列的驱动模块。 作为一个虚拟的中间层,该层位于硬件与其它的软件层之间。 需要注意的是,这个内核操作系统并非类 GNU/Linux 的,所以其系统库、系统初始化 和编程接口都和标准的Linux 系统有所不同的。 它没有采用虚拟内存文件系统,而是采用 YAFFS2 文件系统。 YAFFS2( Yet Another Flash File System)文件系统是一个开源的专门为 NAND Flash 设计的文件系统,具有很好的可移植性,同时也是一种日志型文件系统。 Android 运行时库和其他库层: Android 运行时库包含一组核心库 (提供了 Java语言核心库内的大部分功能) 和 Dalvik 虚拟机,同时 Android 提供了丰富的库类支持且大部分为开源代码 ,如采用的数据库为 SQLite。 应用框架层:在应用框架层 Android 开发人员可以跟那些核心应用一样拥有访问框架 APIs 的全部权限。 应用的系结构化设计简化了各组件之间的重用,任何应用都可以分发自己的组件,任何应用也可以使用这些分发的组件。 应用程序层: Android 本身会附带一些核心的应用程序,包括 客户端、短信程序、日历、地图、浏览器、通讯录等,目前所有的应用程序都是由 Java 语言开发的。 图 2 Android 平台架构图 Android 应用程序的构成 对于一个 Android 应用程序来说,是由四种 构造块组织而成: Activity、 Intent Receiver、 Service、 Content Provider。 但是, 并不是每一个 Android 应用程序都需要这四种构造块,以下是对四种构造块的一些说明: Activity:是 Android 构造块中最基本的一种。 一个 activity 通常就是一个单独的屏幕。 每一个 activity 都被实现为一个独立的类,并且继承于 Activity 这个基类。 这个 activity 类将会显示由几个 Views 控件组成的用户接口,并对事件做出响应。 大部份的应用都会包含多个的屏幕。 Android 使用了 Intent 这个特殊类实现在屏幕与屏幕之间移动。 Intent Receiver:通过 Intent Receiver 实现应用能够对一个外部的事件做出响应, Intent Receiver 在 中注册,但也可以在代码中使用()进行注册。 当一个 intent receiver 被触发时,应用不必对请求调用 intent receiver,系统会在需要的时候启动你的应用。 Service:一个 Service 是一段长 生命周期的,没有用户界面的程序。 例如媒体播放器这个 activity 会使用 ()来启动一个 service,从而可以在后台保持音乐的播放。 同时,系统也将保持这个 service 一直执行,直到这个 service 运行结束。 Content Provider:应用程序能够将它们的数据保存到文件中、 SQL 数据库中,甚至是任何有效的设备中。 Content Provider 实现了应用数据与其它的应用的共享。 一个Content Provider 类实现了一组标准的方法,从而能够让其它的应 用保存或读取此Content Provider 处理的各种数据类型。 Eclipse 简介 Eclipse 是一个 跨平台的、开放源代码的 、基于 Java 的可扩展 自由集成开发软件,其 支持众多的开发语言 , 而不仅仅是 Java。 Eclipse 只是给开发人员提供了一个能够扩展系统功能的最小核心,基于扩展点的插件体系结构使得 Eclipse 支持多种语言成为可能。 只要安装相应语言的插件, Eclipse 就可以支持该种语言的开发。 目前, Eclipse 已经可以支持 C/C++、 COBOL、 PHP、 Perl、 Python 等多种 语言。 就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。 Eclipse 是一个开放源代码的项目,任何人都可以下载 Eclipse 的源代码,并且在此基础上开发自己的功能插件。 也就是说未来只要有人需要,就会有建立在 Eclipse 之上的COBOL, Perl, Python 等语言的开发插件出现。 同时可以通过开发新的插件扩展现有插件的功能,比如在现有的 Java 开发环境中加入 Tomcat 服务器插件。 可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是 Eclipse 的潜力所在。 通过配置 Android必要的开发组件和插件,使用 Java 编程语言, Eclipse 将完整支持 Android 程序的开发。 SQLite数据库 SQLite 是一个开源的嵌入式关系数据库, 20xx 年由 Hipp 发布。 自几十年前出现的商业应用程序以来,数据库就成为了应用程序的主要组成部分,同时数据库管理系统也变得非常庞大和复杂,并占用了相当多的系统资源。 随着嵌入式应用程序的大量出现,一种新型的轻量级数据库 SQLite 也随之产生。 轻型的数据库 SQLite 是遵守 ACID 的关联式数据库管理系统,它的设计目标是嵌入 式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百 K 的内存就够了。 它能够支持 Windows/Linux/Unix 等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、 C、 PHP、 Java 等,还有 ODBC 接口,同样比起 Mysql、 PostgreSQL 这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。 Android 支持高效、快速的数据存储方式,应用程序可以使用适合的方式对数据进程保存和访问,其中提供了两个类,用于简化 SQLite 数据库的操作。 第一个是SQLiteOpenHelper,该类主要用于自动完成打开、关闭指定的数据库,当数据库不存在的情况下还可以创建数据库,并根据需要更新数据库。 第二个是 SQLiteDatabase 类,该类只要用于查询数据库,向数据库中新建数据项、删除数据项。 第三章 系统分析 可行性研究 可行性研究是为了弄清楚系统开发的项目是不是可以实现、是不是值得研究的过程,进行可执行性研究是非常必要且十分重要的,因为这是一个简化系统分析和系统设计的过程。 如今智能手机等移动设备高速智能 化,移动网络通信正在以前所未有的速度走进人们的生活、工作和学习,突破了时空的界限,从而提高了工作、学习的效率。 教学管理系统是基于 Android 平台进行开发的,可以提高师生之间的沟通效率,并且很大程度上帮助师生解决了教学和学习上的问题。 根据软件领域的可行性研究,主要考虑以下 四 点: 技术可行性: 开发平台 Android 是一个开源的平台,手机客户端采用 Eclipse 配合 Android SDK 来实现系统功能,开发过程中可以通过网络获取绝大部分的开源代码,并且 Google 提供了一套成熟又全面的 API,所以手机客户 端在技术上是可行的。 数据可行性: 本软件系统是教学管理系统的手机客户端,相关的学生、教师、课程 、作业 信息数据,可以参考现有相关的基于 B/C 结构的教学管理系统,来对数据库进行设计和构建。 经济可行性: 从成本方面来看,本系统的实现 已 拥有计算机和网络硬件 等资源 ,而且 Android 是一个开放的平台, Android SDK、 Eclipse 和 JDK 都是可以免费下载的,成本不高;从效益方面来看,本 毕业设计的 客户端的设计和实现,是为了给教学管理带来便利,暂时还不会 带来经济收益,但 在 经过一定程度上的完善,可以 考虑 在社会市场上进行推广。 法律可行性: Android 平台是开放的平台,代码都是开源的,并且本软件系统的实现是 以 作为毕业设计而非以盈利为目的,与商业无关,且是自主开发设计,因此不会构成侵权或其他责任问题,在法律上是可行的。 经过以上几点的可行性分析,可以确定本软件系统能够进行开发。 用户需求分析 现在大部分高校学生都拥有智能手机,智能手机已经成了学生 在 生活和学习中必不可少的日常用品。 本论文研究的基于 Android 平台教学管理系统的学生客户端,主要面向的使用对象 就是在校大学生。 每位 学生都拥有 教学 管理系统的 个人 帐号 —— 学生本人的学号和 设置的 密码,本软件系统对于学生的学习及生活非常重要,学生可以根据需求查询自己的个人信息 、进行选课 、 查看 课程 信息和 课程 计划 等, 并且 在和相关任课教师沟通关于课程计划、课程作业等方面都带来了很大的便利,此外学生还可以给 任课 教师留言, 说明自己的疑惑或相关的问题, 进行实时沟通。 系统需求分析 系统功能需求 本课题的设计目标是在 Android 平台上实现教学管理系统的学生客户端 ,根据学生在日常学习中的相关需求来设计该教学管理系统的功能 : ( 1)首先学生可以通过 该系统实现:在没有账号的情况下可以注册 并输入自己的个人信息 、在有账号的情况下 正确输入用户名和密码 之 后 可以 进行 登录; ( 2)成功登录之后可以查看相关信息:查看个人信息、对教师发布的课程进行选课、查看已选课程的课程信息和课程计划 ; ( 3) 查看 相关任课老师布置 的 作业 内容,确认 提交作业,并查看作业的批改情况; ( 4)完成 留 言板功能,实现学生和 任课 教师之间的互动沟通,打破时间和空间的局限性。 ( 5) 要求该系统拥有美观的 UI 界面。 系统目标 ( 1)实现系统结构清晰 流畅 , 学生 可以很容易 找到自己想找的功能,方便 学生 使用 ; ( 2)实现 系统功能 明确 完善,集合 学生 的需求来设计相关 功能, 并 进一步改进 ; ( 3) 实现 系统良好的可扩展性和可维护性 ; ( 4) 实现系统可以根据 学生 的需求 , 添加或修改相关的 功能。 流程分析 当学生运行系统程序时,会出现登陆界面,在拥有账号的情况下,可以直接登陆,在没有账号的情况下,可以 先 进行账号注册,登陆成功 之后,可以进行个人 信息 、课程信息、作业内容等信息 的查询 , 以及 选课、确认提交作业、给任课教师留言等 相关 的 操作。 教学管理系统学生客户端 的功能 模块 流程图如图 3 所示: 图 3 教学管理系统学生客户端 — 功能模块图 分析建模 建立实体 联系图 为了把学生的数据要求清楚、准确地描述出来,通过建立一个概念性的数据模型(也称之为信息模型)来实现。 概念性数据模型是一种面向问题的数据模型,是按照学生的需求来建立的,描述了从学生角度看到的数据,反映了学生在使用系统时的现实环境。 通过使用实体 联系图( ER 图)来建立数据模型,包含了实体(即数据对象)、关系和属性 3 种基本成分,我们通常就是用实体、联系和属性这 3 个概念来理解现实问题的,因此, ER 图比较接近人们的习惯思维方式 ,便于理解。 用来描述现实世界的概念模型,在数据库系统概论中属于概念设。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。