摘要摘要随着Widget编程的兴起,人们不断追寻个性化的桌面,以充分突出“个人电脑”这一概念。Widget在一面世出来后便被称作:“桌面的精灵”。它们一般都很小,在终端上嵌入非常方便,运行快速。本论文基于以YaHooWidgetEngine软件平台,利用软件工程思想,开发出一款实用有效的桌面软件,并完成软件的演示实例,以此为今后的进一步研究Widget应用开发提供了依据和资料。关键字:widget编程,个性化,应用开发目录目录第1章引言.........................................................................................................-1-1.1Widget选题背景及概述............................................................................-1-1.2国内外发展现状........................................................................................-2-1.2.1Widget的分类...................................................................................-2-1.2.2国内外发展现状...............................................................................-2-1.2.3Widget未来展望...............................................................................-2-1.3课题研究内容............................................................................................-3-1.4任务分工及工作计划................................................................................-3-1.4.1整体计划...........................................................................................-3-1.4.2个人工作计划...................................................................................-1-第2章相关技术分析.........................................................................................-2-2.1相关技术分析.............................................................................................-2-第3章项目需求与分析.....................................................................................-4-3.1需求分析....................................................................................................-4-3.1.1模块划分...........................................................................................-4-3.1.2模块功能...........................................................................................-4-3.1.3模块流程图.......................................................................................-5-第4章系统实现与测试.....................................................................................-7-4.1系统功能演示.............................................................................................-7-4.2系统测试.....................................................................................................-9-4.2.1环境测试...........................................................................................-9-4.2.2界面测试...........................................................................................-9-第5章开发心得体会.........................................................................................-1-参考文献...................................................................................................................-1-附录...........................................................................................................................-1-第1章引言1.1Widget选题背景及概述在牛津词典中,“Widget”一词的释义是“一个小器具或机械设备,特指那些名字未知或未被特别提及过的物件”。我们通常指的Widget是一种可供自己制作和下载的工具集合,可以在电脑桌面、网页、手机终端上单独执行,无需通过浏览器便可连接到网络。Widget是互联网应用的产物,更加开放,更便于信息获取。Widget在互联网中的作用主要体现在以下两点:首先,实现了桌面应用和网络服务的结合,用户可以不用从浏览器登录网站就可以获得网络信息;其次,它提供了一个平台,用户可以自由地创建、发布、共享各类业务应用。随着Widget应用的不断演进,国际上很多Widget产品已经开始在手机媒体上应用。Nokia推出了S60平台的Widget,苹果的Phone也搭载了Widget,然而由于规范的不统一,各个厂家的Widget应用还不能做到互通。随着标准的制定,未来W1dget会向着跨平台、跨系统、跨终端方向发展,这才能充分体现Web2.0所倡导的用户参与的实质。电子科技大学课程设计1.2国内外发展现状1.2.1Widget的分类目前存在各种形式的Widget,在技术层面上可分为:桌面Widget、网页Widget、手机Widget;在业务应用层面上可分为:静态Widget和动态Widget。桌面Widget是轻量级的Web应用程序,为使用者提供简便式的服务。它通常被设计为具有特定的功能,如提供天气、股票、拍卖等的信息。网页Widget的主要功能是帮助内容提供商将自身的各种多媒体信息聚合在一张网页上,其聚合的内容包括:广告信息、信息咨询、网络工具等。手机Widget是一种通过手机查找信息时使用的功能。一般通过手机来查找信息时,首先连接无线网络,然后再经过繁琐的操作过程之后才能浏览信息,但是如果在待机画面上设有可直接调入股市、天气等信息的Widget的话,不需要繁琐的操作过程。1.2.2国内外发展现状各主要的互联网公司,如facebook,Google等均在大力发展Widget业务。国外的Widget应用已进入发展期,业务应用已逐渐走向成熟,市场竞争者众多,业务提供商之间的竞争已经从简单的业务应用争夺发展到更深层次的平台之间的竞争。与此同时,国内用户对于在手机上使用Widget来获取自己相关信息也越来越感兴趣,运营商也在积极努力开展,Widget将在几年内变得非常流行。1.2.3Widget未来展望为了使Widget业务应用能跨平台、跨终端使用,需要对Widget引擎、Widget业务应用以及Widget运行的终端进行详细的定义。Widget平台开放接口中需要对传输的数据包格式、开放API、编写工具/脚本、数字签名进行规范统一。Widget业务应用中需要对开发环境、开发工具,以及Widget组件文件如:Info.1ist、[Name].html、Icon.png等组件规范化。用户参照业务规电子科技大学课程设计范中研发出来的Widget业务才能在不同型号、不同平台的终端上使用。同时,不同的Widget业务对终端有着不同的要求,在硬件上需要统一规定,如:CPU、内存大小、屏幕分辨率、尺寸、摄像头像素及数据接口等;软件上需要定义网络协议、多媒体格式、操作系统、文件管理器、Widget应用数量。只有对上述内容进行规范化,才能充分发挥Widget的真正作用。1.3课题研究内容本次项目的主要目的是分析引擎的各个功能模块的具体实现方式,以及各个模块之间的关系。在理解了实现原理的基础上,优化部分功能模块,在引擎上实现一个具体的Widget应用程序。1.4任务分工及工作计划1.4.1整体计划任务包括:分析课题的可行性,国内外现状以及产生历史和使用情况。其次,对Widget引擎源码进行分析,提炼出各功能模块,理清各模块之间的关系。然后,对功能模块进行优化。最后,编写一个Widget应用程序进行演示与测试,并对项目进行汇总及总结。电子科技大学课程设计1.4.2个人工作计划首先,分析课题的可行性,国内外现状以及产生历史和使用情况。其次,进行可行性与需求分析,给出编程思想以及流程图。然后进行代码编写与调试。最后,进行项目汇总及总结。时间安排如下:需求分析:7月11日至7月20日代码编写与调试:7月21日至8月27日项目汇总及总结:8月28日至9月4日电子科技大学课程设计第2章相关技术分析2.1相关技术分析本次选题设计使用的平台是WindowsOS,YahooWidgetengine;设计的编程语言是javascript,XML。Widget应用程序主要构成:.kon包含Widget工具的主要程式代码。WidgetEngine首先会寻找这个档案,并会在使用者按两Widget工具配套时读取其中的指示。.js它通常包含大部分Widget工具执行所需要的JavaScript。Javascript是一种由NETSPACE的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言.scpt這是一個AppleScript文件,其中包含了AppleScript命令。编写widget需要的工具文本编辑器NotePad或者或者其他任何支持Unicode的文字编辑器。图形编辑器任何一款具有图形编辑功能的软件。电子