软件工程专业毕业设计论文内容模板

本科毕业设计论文模板(软件开发类)

1 绪论

1.1研究背景(合并1.2)

春天里来百花香,怎么会不让人沉醉呢?美丽的花自然好看,但人的创

造力更是无边,花艺赋予了鲜花更多的话语表达,想不想接触甚至做出更多美好的花艺作品呢? 「花田小憩」不仅仅是有专业的花艺教学内容,它还是一个活跃的百万花艺爱好者社区。在这里,你可以看到各式各样的话题讨论,不仅限于花艺,还延伸至家居、植物、杂物等生活美学领域。 「花田小憩」还提供了众多高清花艺壁纸,供你下载换桌面,可以适配各种屏幕尺寸。手机的美观再也不愁了。 「花田小憩」是一款花艺爱好者不容错过的生活应用。在这里,收获的不仅仅是花艺知识,还有同道中人和美的生活方式。让你的节奏,慢下来,美下去。 作为一个植物生活美学平台,「花田小憩」还提供跟花艺与生活美学相关的物品贩卖,如鲜花、器皿、干花、书籍等。你可以在这里寻找生活的美。 「花田小憩」创办初衷是想为所有喜欢植物和美学的人们,通过花草与时间的叠加,营造一个小而美的精致生活。希望能让用户在繁琐的生活之中,享受一种静雅恬淡的生活之美,制造一份专属的美学生活态度。

1.2研究开发现状分析

(1)研发现状:现有系统解决领域问题及其技术运用现状的分类、分析,优缺点分析:总结现有成果的优缺点;(2)系统开发的必要性;在上述分析的基础上,阐明项目研究开发的必要性。

1.3 主要研究内容.

(1)技术路线:采用什么技术、方法、环境与工具;(2)系统特征:解决的关键问题(解决什么问题)、达到什么目标,实现什么功能。

1.4本文的组织结构

此文的分为六部分,其中第一部分为绪论,主要介绍App的研究背景以

及国内外形势,第二部分为相关技术和工具综述,主要分为Android技术的讲解、Android应用程序的介绍、Java开发方面的知识、C/C++开发方面的知识、硬件抽象层的概述、系统内核层的讲解、以及Android的安全权限机制的深入探讨、Android四大组件中Activity的理解以及Android应用程序的框架,还有Android系统维护方面的相关知识。

2.相关技术和工具综述 2.1 Android技术

Android是一种以l i n u x为基础的开放源代码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。

Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由谷歌收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。Android的主要竞争对手是苹果公司的i o s以及RIM的Blackberry OS。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年2月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。

Android的系统架构和其它操作系统一样,采用了分层的架构。android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和l i n u x核心层。

Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。

在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C++作为编程语言来开发应用程序,也可使用SL4A来使用其他各种脚本语言进行编程(如:python、l u a、t cl、p h p等等),还有其他诸如:QT(qt for android)、Mono(mono for android)等一些著名编程框架也开始支持Android编程,甚至通过Mon o Droid,开发者还可以使用C#作为编程语言来开发应用程序。另外,谷歌还在2009年特别发布了针对初学者的Android Simple语言,该语言类似Basic语言。而在网页编程语言方面,JavaScript,HTML5等等都已经支持Android开发。

2.1.2 Android应用程序

早期的Android应用程序开发,通常通过Android SDK(Android软件开发包)下使用Java作为编程语言来开发应用程序,但通过不同的软件开发包,则使用的编程语言也不同。

例如开发者可以通过Android NDK(Android Native开发包)使用C语言或者C++语言来编程语言开发应用程序。同时谷歌还推出了适合初学者编程使用的Simple语言,该语言类似微软公司的Visual Basic语言。此外,谷歌公司还推出了Google App Inventor开发工具,该开发工具可以快速地构建应用程序,方便新手开发者。

2.1.3 JAVA开发方面

Android支持使用Java作为编程语言来开发应用程序,而Android的Java开发方面从接口到功能,都有层出不穷的变化。考虑到Java虚拟机的效率和资

源占用,谷歌重新设计了Android的Java,以便能提高效率和减少资源占用,因而与J2ME等不同。

2.1.4 C/C++开发方面

早期的Android开发只支持Java作为编程语言开发应用程序,因而使得其他语言开发者只能望而却步。2010年4月,谷歌正式对开发者发布了Android NDK,NDK允许开发者使用C/C++作为编程语言来为Android开发应用程序,初版的NDK使得开发者看到了C/C++在Android开发中的希望。

但是,当前版本的NDK在功能上还有很多局限性:NDK并没有提供对应用程序生命周期的维护;NDK也不提供对Android系统中大量系统事件的支持;对于作为应用程序交互接口的UI API,当前版本的NDK中也没有提供。但是相对于初版的NDK,现在的NDK已经进行了许多重大的功能改进。

由此可见,NDK仍然需要完善和发展,相信未来随着NDK的发展,NDK可以做得更多更好。

2.1.5 硬件抽象层

Android 的 HAL(硬件抽象层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让

Android

Linux kernel

成 kernel independent 的概念,也让 Android framework 的开发能在不考虑驱动程序实现的前提下进行发展。

HAL stub 是一种代理人(proxy)的概念,stub 是以 *.so 档的形式存在。Stub

HAL“提供”操作函数(operations),并

由 Android runtime 向 HAL 取得stub的operations,再callback这些操作函数。HAL 里包含了许多的 stub(代理人)。Runtime 只要说明“类型”,即moduleID,就可以取得操作函数。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4