1、 介于对该系统研发的可行性分析和成熟的技术路线保障,确定了毕业论文选课:基于Android模拟考试系统。发展趋势 随着Android系统的持续火爆,运行Android系统的智能手机将不断增加,人们肯定会越来越多跨入Android的阵营,而模拟考试系统也必定会越来越广泛的被使用。二、研究的基本内容与拟解决的主要问题研究的基本内容: 研究的基本内容从技术角度而言,包括:基于Android技术的相关应用;Eclipse 3.6开发环境的运用;SQLite轻便型数据库的使用。 解决的主要问题Android的相关知识的研究与学习: 下图显示的是Android操作系统的主要组件。每一部分将会在下面具体描述
2、。 Android系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。Eclipse 平台的相关知识的研究和学习: Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 Eclipse的基础是富客户机平台(Rich Client Platform,即RCP)。RCP包括下列组件: 1、核
3、心平台(启动Eclipse,运行插件) 2、OSGi(标准集束框架) 3、SWT(可移植构件工具包) 4、JFace(文件缓冲,文本处理,文本编辑器) 5、Eclipse工作台(即Workbench ,包含视图(views)、编辑器(editors)、视角(perspectives)、和向导(wizards) Eclipse采用的技术是IBM公司开发的(SWT),这是一种基于Java的窗口组件,类似Java本身提供的AWT和Swing窗口组件;不过IBM声称SWT比其他Java窗口组件更有效率。Eclipse的用户界面还使用了GUI中间层JFace,从而简化了基于SWT的应用程序的构建。 Ec
4、lipse的插件机制是轻型软件组件化架构。在富客户机平台上,Eclipse使用插件来提供所有的附加功能,例如支持Java以外的其他语言。 已有的分离的插件已经能够支持C/C+(CDT)、PHP、Perl、Ruby,Python、telnet和数据库开发。插件架构能够支持将任意的扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。 Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基本内核包括:图形API SWT/Jface, Java开发环境插件(JDT),插件开发环境(PDE)等2。SQLit
5、e的相关知识的研究和学习: SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月. 至今已经有10个年头,SQLite也迎来了一个版本 SQ
6、Lite 3已经发布。SQLite特性: 1. ACID事务 2. 零配置 ? 无需安装和管理配置 3. 储存在单一磁盘文件中的一个完整的数据库 4. 数据库文件可以在不同字节顺序的机器间自由的共享 5. 支持数据库大小至2TB 6. 足够小, 大致3万行C代码, 250K 7. 比一些流行的数据库在大部分普通数据库操作要快 8. 简单, 轻松的API 9. 包含TCL绑定, 同时通过Wrapper支持其他语言的绑定 10. 良好注释的源代码, 并且有着90%以上的测试覆盖率 11. 独立: 没有额外依赖 12. Source完全的Open, 你可以用于任何用途, 包括出售它 13. 支持多种
7、开发语言,C, PHP, Perl, Java, ASP .NET,Python三、研究的方法与技术路线、研究难点,预期达到的目标 研究的方法与技术路线应用程序框架(Application Framework) 普通的开发者可以使用Android核心应用程序使用的系统API。Android中的应用开发框架设计的非常巧妙,通过这套应用框架,各种组件可以被用户的应用重复利用,各种服务也可以被各种应用重复利用。 下边列举了每一个应用程序有可能会使用到的应用框架的部分。 一组Views(UI组件)。这些UI组件包括列表(List)、文本框(textbox)、按钮(button)等。通过这些UI组件,可
8、以构建应用程序的视图部分,这部分也就是用户能看到的部分。 Content Providers。通俗的理解Content Provider就是提供了一种机制,通过这种机制,应用程序可以实现数据的互访和共享。 Resource Manger。它负责管理非代码的访问。如本地的图片资源、涉及布局的XML文件及国际化的字符串等。 Notification Manager。它能让程序将自己的警示信息显示在状态栏上,例如,当有短信的时候,可以再状态栏上显示出新短信的信息。 Activiy Manager。它管理着应用的生命周期,并且提供了应用页面退出的机制。在Android应用中,每一个应用一般是由多个页面
9、组成的,而每个页面的单位就是Activity,在通俗一点讲,可以认为Android的应用是由多个Activity的交互构成的(当然有些应用只有一个Activity)。 库(Libraries)和运行环境(RunTime) 这部分已经开始设计底层。Android包含一些C/C+库,这些库能被Android系统中不同的组件使用,它们通过Andorid应用程序框架为开发者提供服务,以下是一些核心库。 系统C库。一个从BSD继承来的标准陈希同函数库(libc),它是专门为基于嵌入式Linux的设备定制的。 媒体库。基于PacketVideo OpenCORE,该库支持多种常用的音频、视频格式回放和录制
10、,同时支持静态图像文件。编码格式包括MPEG4、H.264、MP3、AAC、AMR、JPG、PNG。 Surface Manager。对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。 LibWebCore。一个最新的Web浏览器引擎,用来支持Android浏览器和一个可嵌入的Web视图。 SGL。底层的2D图形引擎。 3D libraries。基于OpenGL ES 1.0 APIs实现,该库可以使用硬件3D加速(速度可用),这使用高度优化的3D软加速。 FreeType。位图(bitmap)和矢量(vector)字体显示。 SQLite。一个对于所有应用程序可用,功能强
11、大的轻型关系型数据库引擎。 Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。 每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备,该格式文件针对小内存使用坐了优化。同时虚拟机是基于寄存器的,所有的类都经由Java编译器编译,然后通过SDK中的“dx”工具转化成dex格式,由虚拟机执行。 Dalvik虚拟机依赖于Linux内核的一些功能,例如,线程机制和底层内存管理机制, Android的核心系统服务依赖于Linux2.6内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux内核
12、也同时作为硬件和软件栈之间的抽象层。3SQLite数据库 每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库 -大名鼎鼎的SQLite。SQLite是一款轻量级数据库,它的设计目的是嵌入式,而且它占用的资源非常少,在嵌入式设备中,可能只需要几百KB,这也是 Android 系统采用 SQLite 数据库的原因之一。SQLite有如下几个特点: 轻量级:使用 SQLite 只需要带一个动态库,就可以享受它的全部功能,而且那个动态库的尺寸想当小。 独立性:SQLite 数据库的核心引擎不需要依赖第三方软件,也不需要所谓的“安装”。 隔离
13、性:SQLite 数据库中所有的信息比如表、视图、触发器等都包含在一个文件夹内,方便管理和维护。 跨平台:SQLite 目前支持大部分操作系统,不至电脑操作系统更在众多的手机系统也是能够运行,比如:Android。 多语言接口:SQLite 数据库支持多语言编程接口。 安全性:SQLite 数据库通过数据库级上的独占性和共享锁来实现独立事务处理。这意味着多个进程可以在同一时间从同一数据库读取数据,但只能有一个可以写入数据。研究难点 通过系统程序开发前的问题定义、可行性研究、需求分析等阶段的摸索,预计了在系统研发过程中可能出现的难点,现说明如下: (1)模拟考试系统题库数据库的设计。模拟考试系统
14、题库数据库的整理是实现系统功能必须要克服的难点,数据录入、读取的正确性,直接反映了系统设计的可靠性能,也是整个系统最基本的功能。其难点在于:要对数据库有全面体统的掌握,对SQLite和Java语言编程方法要掌握。 (2)模拟考试系统UI设计。一个好的系统应该要有一个人性化的UI界面,才能让使用者有比较良好的用户体验。软件设计的初衷是给用户使用,人性化的界面设计是系统的基本要求。 (3)考试答案评判。习题答案的正确性的评判是本系统的重要组成部分。其评判的正确性直接影响到本系统的实用性。 (4)Android系统应用程序框架的掌握和使用。预期达到的目标通过Eclipse的平台,开发一个基于Andr
15、oid的模拟考试系统,具备以下功能:1、可以完成试题的维护,并可以进行随机练习、顺序练习、模拟测试等基本功能。2、完成试题随机抽取功能与组卷功能 。3、具备评判功能以及正确答案显示功能。四、论文详细工作进度和安排第七学期第10周至第18周(2011年01月06日前):文献检索和资料收集,完成毕业论文(设计)文献综述、开题报告和外文翻译;第八学期 第1周?至第3周(2011年03月11日前):撰写论文提纲,完成毕业论文(设计)初稿、需求分析和概要设计;第八学期 第4周?至第12周(2011年05月13日前):详细设计、系统调试、和毕业论文(设计)完成定稿;第八学期第13周(2011年05月20日
16、前):完成应用软件系统的设计和毕业论文(设计)送指导老师和评阅老师评阅,准备答辩;第八学期第14周:参加毕业论文(设计)答辩。五、主要参考文献:1?美伯内特?著,张波等译.Android基础教程M北京:?人民邮电出版社,2006 2?美罗杰 等著,李耀亮?译.?Android应用开发M.北京:人民邮电出版社,2010 3?杨丰盛?著.?Android应用开发揭秘M.?北京:机械工业出版社,2010 4?E2EColud工作室?编著.深入浅出Google?AndroidM.?人民邮电出版社.2009 5?张利国,代闻,龚海平?编著.Android移动开发案例详解M.?人民邮电出版社.20106
17、靳岩,姚尚朗 编著Android 开发入门与实战M.?人民邮电出版社.20097 余志龙 陈昱勋 郑名杰 陈小凤 郭秩均 著Google Android SDK开发范例大全M.?8Edtited by Susannah Davrdson Pfalzer Hello, Android Introducing Googles Mobile Development Platform, 3rd EditionM Ed Burnette9 Edtited by Sayed Y. Hashimi Satya Komatineni Dave MacLean Pro Android 2 MApress10 A
18、 Fast Mobile Face Recognition System for Android OS Based on Eigenfaces Decomposition M Appress11 Edtited by Reto Meier Professional Android 2 Application Development12 Edtited by Mark L.Murohy Beginning Android 2 M Appress13 吴亚锋 苏亚光 编著 Android 2.0游戏开发实战宝典 M 人民邮电出版社.201014 杨丰盛 编著 Android 应用开发揭秘 M 机械工业出版社.200915 汪永松 编著 Android 平台开发之旅 M 机械工业出版社.2010
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1