开题报告
设计题目:基于iOS系统的休闲娱乐移动应用的 设计与实现
学生姓名:
学院名称: 电信学院专业名称: 计算机科学与技术 班级名称: 软件0941 学 号:
指导教师:
教师职称:
学 历:
20xx年 4 月 15 日
编程语言。它主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。Objective-C可以在gcc运作的系统写和编译,因为gcc含Objective-C的编译器。
(b)Objective-C用途:
编写IOS操作系统(如:iphone、ipod touch、ipad 等苹果移动终端设备 )应用程序的利器 Tiobe在今年7月的编程语言排行榜中有一个显著变化是:一直在50名左右的Objective-C排名大幅提升,它的流行当归功于iphone的成功,因为Objective-C一直被用于编写iphone应用程序。
(c)语言特性:
Objective-C是非常实际的语言。它使用一个用C写成、很小的运行库,只会令应用程序的大小增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。ObjC写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。
Objective-C的最初版本并不支持垃圾回收。在当时这是争论的焦点之一,很多人考虑到Smalltalk回收时有漫长的死亡时间,令整个系统失去功用。Objective-C为避免此问题才不拥有这个功能。虽然某些第三方版本已加入这个功能(尤是GNUstep), Apple在其Mac OS X 10.3中仍未引入这个功能。
另一个问题是ObjC不包括命名空间机制(namespace mechanism)。取而代之的是程序设计师必须在其类别名称加上前缀,时常引致冲突。在2004年,在Cocoa编程环境中,所有Mac OS X类别和函式均有NS作为前缀,例如NSObject或NSButton来清楚分辨它们属于Mac OS X核心;使用NS是由于这些类别的名称在NeXTSTEP开发时定下。
虽然Objective-C是C的母集,但它也不视C的基本型别为第一级的对象。
(d)优缺点:
Apple在其Mac OS X 10.3中仍未引入垃圾回收这个功能。不过令人欣慰的是在Apple发布的xCode4中已经支持自动释放啦,我不敢冒昧地说那是垃圾回收,因为两者机制不同,在xCode4中的自动释放,也就是ARC(Automatic Reference Counting)机制,是不需要用户手动去Release一个对象,而是在编译期间,编译器会自动帮你添加那些以前你经常写的
[NSObject release]。
另一个问题是ObjC不包括命名空间机制(namespace mechanism)。取而代之的是程序设计师必须在其类别名称加上前缀,时常引致冲突。在2004年,在Cocoa编程环境中,所有Mac OS X类别和函式均有“NS”作为前缀,例如NSObject或NSButton来清楚分别它们属于Mac OS X核心;使用“NS”是由于这些类别的名称在NeXTSTEP开发时定下。
虽然Objective-C是C的母集,但它也不视C的基本型别为第一级的对象。
和C++不同,Objective-C不支援运算子多载(它不支持ad-hoc多型)。亦与C++不同,但和Java相同,Objective-C只容许对象继承一个类别(不设多重继承)。Categories和
protocols不但可以提供很多多重继承的好处,而且没有很多缺点,例如额外执行时间过重和二进制不兼容。
由于Obj-C使用动态运行时类型,而且所有的方法都是函数调用(有时甚至连系统调
用(syscalls)也如此),很多常见的编译时性能优化方法都不能应用于Obj-C(例如:内联函数、常数传播、交互式优化、纯量取代与聚集等)。这使得Obj-C性能劣于类似的对象抽象语言(如C++)。不过Obj-C拥护者认为既然Obj-C运行时消耗较大,Obj-C本来就不应应用于C++或Java常见的底层抽象。
(3). Xcode简介
Xcode是苹果公司向开发人员提供的集成开发环境(非开源),用于开发Mac OS X,ios的应用程序。其运行于苹果公司的Mac操作系统下。
不管你用C、C++、Objective-C或Java编写程序,在AppleScript里编写脚本,还是试图从另一个奇妙的工具中转移编码,你会发现 Xcode 编译速度极快。每次操作都很快速和轻松。
苹果公司为用户提供了全套免费的Cocoa程序开发工具(Xcode)。Mac OS X一起发行,在苹果公司官方的网站下载。
Xcode 4 允许你开发基于iOS的iPad、iPhone、iPod Touch 设备应用程序,只要你有Mac OS X Snow Leopard 10.6.2 以上版本 Mac OS 操作系统,便可安装ios sdk,如果你有iOS设备,便可让Xcode把应用程序部署到你的iOS设备上,不然,你还可以使用iPhone仿真器进行调试。Xcode提供了友好而方便的应用程序开发环境,这样你就可以开发出好的iOS应用程序了。
(4). iOS系统简介
iOS系统的最新版本是iOS6.0;
iOS的系统结构分为以下四个层次:核心操作系统(the Core OS layer),核心服务层(the Core Services layer),媒体层(the Media layer),Cocoa 触摸框架层(the Cocoa Touch layer)。
IPhone的ios系统的开发需要用到控件。开发者在iOS平台会遇到界面和交互如何展现的问题,控件解决了这个问题。使得IPhone的用户界面相对于老式手机,更加友好灵活,并便于用户使用。UIKite框架为开发者提供了很多视图,
UIKit框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面
( UI )接口、应用程序对象、事件控制、绘图模型、窗口、视图和用于控制触摸屏等的接口。 [1]
5.设计相关技术的国内外现状
Objective-C的发展国内外现状
Objective-C,20世纪80年代早期Objective-C被Stepstone公司发明,作者是Brad Cox和Tom Love。80年代后期,NeXT计算机有限责任公司获得了使用Objective-C来开发NeXTStep框架的授权,也就是后来的Cocoa。Objective-C是非常“实际”的语言,使人感觉是在和人交流。
1985年,乔布斯在苹果高层的权利斗争中失利,于是离开了苹果公司,开始转向专业市场,出走后的乔布斯创立了NeXT公司,它以Objective-c为原生的开发语言,具有先进的GUI界面。
1988年,NeXT开发了Objective-c语言库。
1992年,GNU增加了NeXT公司Objective-c语言的支持。Objective-c开始快速发展。
1994年,NeXT公司和Sun公司联合发布了一个名为OPENSTEP的标准规范,它包括Linux 和 GNUStep开发环境。
第二篇:基于web的精品课程设计开题报告
以网络化、数字化、多媒体化和智能化为代表的现代信息技术正在改变着人们的工作、学习与生活方式,也给教育的内容和发展带来了新的发展空间。下面是小编搜索整理的一篇课程设计开题报告,具体内容请查看全文。
题目:基于web的通用精品课程网站系统的设计与实现
一、前言
1. 课题研究的意义,国内外研究现状和发展趋势
1.1精品课程网站研究的意义
高等教育需要网络(要#源码及数据库表)精品课程,因为它能使学生体验到先进的教学方式,获取大量的学科前沿信息,使他们在大学阶段的学习内容更加丰富,知识面更加宽广,能更快地提高自身的综合素质和能力,适应飞速发展的科学要求及学科之间日趋明显的交叉融合的趋势。可以说,网络精品课程的数量和质量直接地影响到能否打造出符合未来社会发展需求的人才。因此,探索和研究精品课程网站建设的设计原则以及设计、开发的方法,将对网络教育、终身教育以及充分发挥优秀教育资源的价值有很重要的指导意义。
1.2国内外研究现状
在世界范围内来看,有关精品课程网站研究一直都在进行并且不断取得进步,特别是西方发达国家,他们在精品课程的理论研究与实际运用方法积累了大量的经验,虽然我们中国国内在精品课程网站这一方面的研究起步较晚,但我们同样也取得了大量丰硕的成果。目前已有大约750门国家级精品课程上网,为实施和推广精品课程、全面提高教学质量提供了样板。各省、市院校也建立了自己的富有特色的精品课程网站。这些优质的课程资源,已经为其他高校的教学工作起到了先锋模范的样板作用[1]。
1.3发展趋势
以网络化、数字化、多媒体化和智能化为代表的现代信息技术正在改变着人们的工作、学习与生活方式,也给教育的内容和发展带来了新的发展空间。课程是教育的核心和灵魂,大学课程则是大学培养目标与培养规格的具体化,是高等学校教学工作的重要依据,而精品课程更被上升为学校办学水平的重要标志。高校实施精品课程建设是一项深化教学改革、提高教学质量的系统工程。因此,高校建立一个自己的精品课程网站是十分必要的事情,这不仅是能使更多的人享用宝贵的教育资料源,同时也对于提升学校自身的知名度,提高学生自学能力,有相当大的帮助。
二、设计方案的确定
1.原理、特点与选择依据
1.1方案的原理
本系统是主要以JSP ,SQL Server 2005,JavaScript,CSS等技术来实现。设计方案思想及原则如下:
(1)使用CSS技术设计前台的页面,用JavaScript技术进行后台验证;
(2)在JSP中使用java代码连接SQL Server 2005,实现数据的存储和提取,实现通用精品课程网站系统的用户管理、新闻管理、论坛管理,教学资料管理等模块的增删改查功能。
1.2方案特点与选择依据
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
JSP可以将内容的生成和显示进行分离。使用JSP技术,Web页面开发人员可以使用HTML或者XML标记来设计和格式化最终页面,使用JSP标记或者脚本片断来生成页面上的动态内容;其编写的程序的执行效率高。JSP 页面将被编译成Servlet并由Java虚拟机执行,编译过程只在JSP页面第一次执行时进行,不需要每次执行程序时都编译;对不同浏览器的兼容很好;强调可重用的组件。绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBeans 组件) 来执行应用程序所要求的更为复杂的处理;采用标记简化页面的开发;具有Java的所有优点。包括高效的存储管理、安全性、易扩充性、强大的数据库支持以及各种API的支持。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
JSP的优势如下:
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2.设计步骤
2.1需求分析
用户来到网站后,可以浏览新闻,也可以根据自己的需求下载课件,播放视频及相关资料,同时也可以进行试卷测试,在遇到困难时可以在留言板上留言讨论。教师的职责是提供相关教学资料,给同学解答疑问。而管理员管理的功能为新闻管理、用户管理、论坛管理、试卷管理、教学资料管理等。