已阅读5页,还剩92页未读, 继续免费阅读
(计算机系统结构专业论文)移动widget引擎xface的研究和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
艺已匕10l 一 一 论文使用授权 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:扭导师签名: 日期:1 寸口年f 月衫日 一 射誓誊尹 譬蘑n嚣-ull 摘要 摘要 随着通信技术的发展,3 g 技术已经越来越成熟,3 g 牌照发放也已经完毕, 终端和网络设备的研发以及网络建设重点已经从3 g 向3 g 增强型转移。根据3 g 技术在我国的商用化及移动网络宽带化的发展趋势,移动通信和互联网互相融合 的趋势已日益明朗。随着3 g 业务的发展逐渐成熟,业务种类也日趋丰富,而业 务开发重点也发生了变化:从通信业务类向娱乐类,媒体类,商务类转移,应用 商店成为2 0 0 8 2 0 0 9 年的开发热点,3 g 业务创新的方向从个人应用向家庭和行业 应用发展。而在这3 g 移动互联网的浪潮下,w i d g e t ,一种能让用户享受个性化移 动互联网服务的小工具,作为未来移动互联网的重要业务形式和展现形式,已经 引起了业内外广泛的关注。但是由于操作系统的多样性,以及高度个性化等特点, 使得w i d g e t 技术在嵌入式设备上很难移植,因此w i d g e t 开发者都迫切需要一种 统一的平台,能让w i d g e t 开发具备j a v a 的一次开发,到处运行的特点,本文所 研究的课题移动w i d g e t 引擎便能提供这样的一种平台,大大减轻了w i d g e t 开发者 的负担。 首先,本文介绍了w i d g e t 引擎的总体设计架构及重点模块的介绍; 然后,重点研究引擎的文档解析,界面布局,焦点管理,滚动模块模块,然 后详细介绍了整个软件的测试流程,最后举了几个典型的应用作为案例,来验证 我们平台的阶段性成果。核心内容如下: 页面解析模块:将x h t m l 页面解析为d o m 树结构,页面中b o d y 标签 作为显示文档的根节点,其中的每个标签作为组成部分,通过d o m 将 这些节点组织成一个有序的界面; 布局排版模块:该模块的功能主要是,根据每个可显示元素的c s s 样式 属性,以及其在文档流中的顺序,计算它们的大小和位置。这些是页面 解析模块和c s s 解析模块的输出节点,因为c s s 规则会影响元素的大小 和位置; 焦点管理模块:负责用户和界面的交互,响应用户的键盘操作,以及触 摸笔动作,其中还涉及滚动条的逻辑。 关键词:w i d g e t ,页面解析,布局渲染,焦点管理,滚动 一 a b s t r a c t a b s t r a c t w i t ht h ed e v e l o p m e n to fc o m m u n i c a t i o nt e c h n o l o g y , 3 gt e c h n o l o g yh a sb e c o m e i n c r e a s i n g l ym a t u r i t y , 3 g l i c e n s e sh a sa l s ob e e ni s s u e d ,t e r m i n a la n dn e t w o r k e q u i p m e n t ,a sw e l la sn e t w o r kb u i l d i n gr e s e a r c ha n dd e v e l o p m e n th a sf o c u s e df r o m 3 gt o 3 g e n h a n c e d t r a n s f e r a c c o r d i n g t ot h et r e n dt h a t3 gt e c h n o l o g y b u s i n e s s o r i e n t e da n dm o b i l en e t w o r kd e v e l o p m e n t h a sb e c o m ei n c r e a s i n g l yc l e a r b e 栅e e nm o b i l ec o m m u n i c a t i o n sa n dt h ei n t e m e t w i t ht h em a t u r i t yo f3 gb u s i n e s s d e v e l o p m e n t ,b u s i n e s st y p e sa r eb e c o m i n gi n c r e a s i n g l yr i c h , w h i l et h eb u s i n e s sf o c u s h a sc h a n g e d :f r o mc o m m u n i c a t i o ns e r v i c ec a t e g o r yt ot h ee n t e r t a i n m e n t ,m e d i a c a t e g o r y , b u s i n e s sc l a s st r a n s f e r , a p p l i c a t i o n s t o r eh a sb e c o m em e1 1 0 ts p o t si nt h e d e v e l o p m e n t ,i n2 0 0 8 2 0 0 9 ,t h ed i r e c t i o no f3 gb u s i n e s si n n o v a t i o n h a st r a n s f e r r e d f r o mt h ei n d i v i d u a la p p l i c a t i o n st ot h eh o m ed e v e l o p m e n ta n di n d u s t r i a la p p l i c a t i o n s i nt h i sn e x tw a v eo f3 gm o b i l ei n t e r a c t ,w i d g e t , a sag a d g e t sa l l o w i n gu s e r st oe n j o y p e r s o n a l i z e dm o b i l ei n t e m e ts e r v i c e s ,m o b i l ei n t e r n e ta st h ek e yb u s i n e s sf o r m sa n d s h o wf o r m si nt h ef u t u r e ,h a sc a u s e dw i d e s p r e a dc o n c e r ni nt h ei n d u s t r y h o w e v e r , d u e t ot h ed i v e r s i t yo ft h eo p e r a t i n gs y s t e m ,a sw e l la sl o t so fp e r s o n a l i z a t i o na n do t h e r f e a t u r e s ,m a k e st h ew i d g e tt e c h n o l o g yi ne m b e d d e dd e v i c e sd i f f i c u l tt ot r a n s p l a n t ,s o t h e r ei sau r g e n tn e e df o rau n i f i e dp l a t f o r mt ow i d g e td e v e l o p e r s ,w h i c ha l l o w sa w i d g e td e v e l o p m e n tc l o s et oj a v ad e v e l o p m e n t ,1 2 1 na n y w h e r ef e a t u r e s ,t h es u b j e c t s t u d i e di nt h i sp a p e r - m o b i l ew i d g e te n g i n e ,w i l lb ea b l et op r o v i d es u c hap l a t f o r m , t h u sg r e a t l yr e d u c i n gt h eb 1 】r d e no fw i d g e td e v e l o p e r s f i r s t ,t h ea r t i c l ed e s c r i b e st h e o v e r a l ld e s i g no ft h ew i d g e te n g i n ea r c h i t e c t u r ea n dk e ym o d u l e so f t h ei n t r o d u c t i o n ; t h e n ,f o c u so nt h el a y o u tr e n d e r i n ge n g i n e ,f o c u sm a n a g e m e n t , a n dr o l l i n gt h e m o d u l e ,a n dt h e nd e s c r i b e di nd e t a i lt h ee n t i r es o f t w a r et e s t i n gp r o c e s s ,a tt h el a s t ,i t a k eaf e wt y p i c a la p p l i c a t i o n sc i t e da sac a s es t u d yt ov a l i d a t ei n i t i a lr e s u l t so f o u r p l a t f o r m c o r ec o n t e n t sa sf o l l o w s : p a g ep a r s i n gm o d u l e :a n a l y s i st h ex h t m l p a g ea sad o m t r e es t r u c t u r e ,t h e b o d yt a gi np a g ei st h et o p p e s tv i s i b l ee l e m e n t ,i nw h i c he a c hv i s i b l es u bt a g i s a ni n t e g r a lp a r to ft h ep a g e si n t e r f a c e ,t h r o u g ht h ed o ms t r u c t u r e ,a l lt h e s e l i a b s t r a c t n o d e sa r eo r d e r l yo r g a n i z e di n t oa nc o m p l e t ei n t e r f a c e l a y o u tm o d u l e s :t h em a i nf u n c t i o no f t h em o d u l ea r e a c c o r d a n c et ot h ec s s r u l e so ft h ev i s i b l ee l e m e n t s ,a sw e l la st h ei n d e xo ft h et a gi nt h ed o c u m e n t f l o w , t oc a l c u l a t et h e i rs i z ea n dl o c a t i o n t h e ya let h eo u t p u tn o d e so fp a g e p a r s i n gm o d u l ea n dc s sp a r s i n gm o d u l e ,b e c a u s ec s sr u l e sw i l la f f e c tt h e s i z ea n dp o s i t i o no fe l e m e n t s f o c u sm a n a g e m e n tm o d u l e :b er e s p o n s i b l ef o ru s e ri n t e r a c t i o na n di n t e r f a c e , i nr e s p o n s et ou s e r 、sk e y b o a r da n dt o u c hp e na c t i o n ,w h i c ha l s oi n v o l v e dt h e l o g i co fs c r o l l b a r ; k e y w o r d s :w i d g e t ,p a g ep a r s e r ,l a y o u tr e n d e r i n g ,f o c u sm a n a g e m e n t ,r o u i n 1 1 i 2 4 5d o m 技术介绍1 1 2 4 6j a v a s c l i p t 技术介绍1 2 第三章移动w i d g e t 引擎总体设计13 3 1 移动w i d g e t 引擎需求分析1 3 3 1 1 应用需求1 3 3 2 移动w i d g e t 引擎总体框架设计1 7 3 2 1 总体分层架构图17 3 2 2 引擎架构图18 3 2 3 移植层架构图1 9 3 2 4 页面文档解析流程。2 0 3 2 5 引擎启动关闭流程2 3 3 3 引擎重点模块的介绍2 5 3 3 1 资源管理模块2 5 1 v 目录 3 3 2c s s 样式解析2 6 3 3 :;j sm a n a g e r 2 7 3 4 小结2 9 第四章页面解析及d o m 标准的实现模块详细设计及实现3 0 4 1 基本概念3 0 4 1 1x h t m l x p 简介3 0 4 1 2x h t m l - x p 详细属性描述。3 0 4 1 3 文档一致性规则3 4 4 1 4d o m 标准介绍3 4 4 2x h t m l 节点的设计3 7 4 3 页面解析3 9 4 3 1x m l 解析模型3 9 4 3 2t i n y x m l 的介绍4 0 4 3 3x h t m l 解析4 1 4 4 核心实现4 2 4 5 小结4 2 第五章布局模块的详细设计及实现4 4 5 1 相关概念4 4 5 1 1 相关c s s 标准4 4 5 1 2 布局页面的基本概念4 4 5 1 3 页面元素显示位置的确定4 5 5 1 4 页面显示元素大小的确定4 5 5 2 详细设计4 6 5 2 1 关键数据结构4 6 5 3 核心实现代码5 2 5 4 小结5 3 第六章焦点管理及滚动模块的详细设计及实现5 4 6 1 需求分析5 4 6 2 详细设计5 5 6 2 1 设计的基本方案5 5 6 2 2 主要数据结构及相关图表5 6 第七章测试及优化6 2 v 目录 7 1 7 2 第八章 8 1 8 2 测试6 2 7 1 1 测试总体流程6 2 7 1 2 单元测试6 3 7 1 3 集成测试6 5 7 1 4 系统测试6 6 7 1 5 性能测试及优化6 6 d 、结6 9 移动w i d g e t 引擎应用介绍。7 0 应用的范畴7 0 应用举例7 2 8 2 1 连连看游戏7 2 8 2 2 百播书客7 7 8 3 小结8 0 第九章总结与展望8 1 9 1 总结8 1 9 2 展望8 1 致谢8 3 参考文献8 4 第一章绪论 1 1 课题研究背景 第一章绪论 随着通信技术的发展,以及手机价格的合理化,中国近年来,手机用户越来 越多,已经跃居于世界第一。随着中国3 g 的快速普及,手机作为一个普及度最 高的信息化终端,其信息终端的功能必然日益得到强化,同时手机作为一个营销 载体的功能也必然日益显现【l 】。 用户数量已经远远超过互联网用户,很显然,手机已经成为非常强劲的通信 媒介,其内容服务必将成为一个巨大的潜在市场。手机互联网将是下一个创造奇 迹的新平台【列。 可以预见的是,专家预测,到2 0 1 1 年,全球手机营销和广告市场将由2 0 0 8 年的3 6 亿美元增长6 倍,达到2 0 0 亿美元左右,其中中国市场将占其中1 5 。 到2 0 0 9 年上半年,我国有一亿多手机用户访问w a p 网站,有2 5 万企业通过无线 平台来推广产品和服务【3 j 。 手机媒体将成为引领互联网和3 g 的风向标,现有3 g 手机上网用户对各种手 机上网应用的使用中,手机上网浏览新闻,手机聊天,手机查询咨询信息,手机 搜索排名前四,其中手机上网浏览新闻的使用率高达9 4 8 ,手机查询咨询信息使 用率也较高。很显然,我们已经进入了移动互联网时代【l 】。 本课题所研究的移动w i d g e t 引擎正是这一时代的先驱产物。移动w i d g e t 引擎 是普辰瑞通通讯技术有限公司结合自身多年嵌入式操作系统、移动终端浏览器、 移动终端应用以及移动w a p 网站的开发经验,开发的拥有完全自主知识产权的 移动终端应用平台端到端的解决方案,其跨平台的特点解决了移动终端设备硬件 平台差异化巨大,相关应用缺乏统一平台的技术难题,轻量级的特点也很适合移 植于手机等处理能力不是很高的嵌入式平台上。 1 2 主要工作 本论文课题来自普辰瑞通通讯技术有限公司的项目。该项目的最终目的是实 现一个可适应多个移动终端平台的m o b i l ew i d g e t 应用平台端到端解决方案。以 电子科技大学硕士学位论文 桌面平台的w i d g e t 技术为基础,在充分理解其技术的前提下,研究其在移动终端 平台,特别是手机平台上的可行性。并经过对最初开发的原型版本的评估讨论, 提出了可运行的多w i d g e t 应用的m o b i l ew i d g e t 引擎。 该课题中本人的主要工作包括: 分析研究手机硬件平台和软件平台发展状况; 分析国内外m o b i l ew i d g e t 技术的研究现状及发展趋势; 对m o b i l ew i d g e t 相关的x m l 、h t m l 、c s s 、j a v a s c r i p t 、a j a ) 【等技术进 行研究学习; 针对已有的m o b i l ew i d g e t 应用方案的局限性提出新的解决方案; m o b i l ew i d g e t 引擎的整体设计与实现; m o b i l ew i d g e t 页面布局模块的设计与实现; m o b i l e w i d g e t 焦点管理模块的设计与实现; 项目测试方案的研究; 项目的单元测试、集成测试、性能测试及优化; 引擎的调试。 1 3 论文结构 本文详细探讨了m o b i l ew i d g e t 引擎设计与实现相关的技术,并介绍了系统 主要部分的设计和实现过程,针对其中的一些关键技术进行了深入的讨论。整个 论文的结构安排如下: 第一章是引言,主要介绍了课题产生的背景及市场价值。 第二章介绍了w i d g e t 的定义,移动互联网以及w i d g e t 相关技术。 第三章详细介绍了移动w i d g e t 引擎的总体框架设计及相关模块的设计。 第四章详细介绍了页面解析的总体设计及实现。 第五章详细介绍了网页布局模块的设计与实现。 第六章对焦点管理及滚动模块的需求分析,设计进行了介绍。 第七章是介绍了改项目的测试工作和优化方面的内容。 第八章简单介绍了在该平台上运行几个应用。 第九章对全文做了一个总结及对未来的展望。 2 第二章w i d g e t 概述 2 1w i d g e t 定义 第二章w i d g e t 概述 w i d g e t 是苹果电脑工程师r o s e 的在苹果操作系统桌面玩一个可以更换皮肤 的m p 3 播放器时的一个想法,经过一年多时间的研究开发,一个运行在苹果操作 系统之上的小工具一k o n f a b u l a t o r 正式发布,其中的主运行文件叫做w i d g e t ,它是 运行在用户桌面上最独一无二的工具【4 】。 经过几年的发展,如今的w i d g e t 已经由当初的曲高和寡逐步发展成与博客、 播客、r s s 、s n s 等w e b 2 0 名词一样被越来越多的人提起。 简单说w i d g e t 可以理解为“应用小插件”,一种可供用户制作和自由下载的小 工具,它包含了娱乐、工作、学习等多种实用功能。目前的w i d g e t 应用大体可分 为三种:d e s k t o pw i d g e t 、w e bw i d g e t 以及m o b i l ew i d g e t 【5 】,本文所要探讨的就 是m o b i l ew i d g e t 。m o b i l ew i d g e t 实际上是运行在移动设备上的d e s k t o pw i d g e t 。 最闻名遐迩的m o b i l ew i d g e t 莫过于诺基亚维信了。诺基亚公司为了实现其战略 转型,由设备运营商进入移动互联网领域,推出了维信,短短一年多的时间就吸 引了3 0 0 0 多个w i d g e t s ( 精灵) 的加入【5 1 。用户在诺基亚机器上安装( 或者已经 预装) 了维信软件之后,可以通过自主添加维信精灵的方式实现你想要的各种功 能。m o b i l ew i d g e t 具有如下特点: 占有空问小,体积小; 占用的屏幕小; 功能简单,专一,做事少f 6 】; 2 2 移动互联网与w i d g e t 移动互联网无疑是3 g 时代的杀手级应用,基于移动互联网的w i d g e t 不可避 免地成为这个生态系统上的重要一环。移动互联网的w i d g e t 和我们常用的互联网 w i d g e t 有一定区别,这是由移动互联网的特点所决定的。以位置信息服务为例, w i d g e t 可以通过手机上的g p s 模块获取用户的位置信息,当用户拿着手机到了某 一个地方想去看一看周围有没有星巴克时,就可以使用这种功能来获得离他最近 电子科技大学硕士学位论文 的星巴克的具体位置。再如可在某些手机上使用w i d g e t 用来做记步器的功能,当 用户锻炼的时候就可以记录锻炼的数据,运营商就可以基于用户的信息做用户的 行为分析,完成最人性化的内容推送服判5 1 。 移动w i d g e t 具有小巧轻便、开发成本低、基于标准w e b 技术,开发门槛低, 潜在开发者众多、与操作系统耦合度低和功能完整的特点,此外,由于运行在移 动终端上,移动w i d g e t 还有一些其他特性。首先,可以通过移动w i d g e t 实现个 性化的用户界面,可以轻而易举让每部手机都变得独一无二。第二,移动w i d g e t 可以实现很多适合移动场景的应用,如与环境相关、与位置相关的w e b 应用。第 三,移动w i d g e t 特定的服务和内容使得用户更加容易获得有用信息,减少流量, 避免冗余的数据传输带来的额外流量。最后,移动w i d g e t 也是发布手机广告的很 好途径【7 j 。总而言之,移动w i d g e t 的易开发、易部署、个性化、交互式、消耗流 量少等特性使它非常适合移动互联网【8 】。 2 3 国内外研究现状 2 3 1w i d g e t 标准 现在w 3 c 对w i d g e t 引擎的开发提出了相应的开发标准和接口规范,这 样同一种w i d g e t 应用可以通过w i d g e t 引擎运行在各个平台上。 w 3 c 发布的w i d g e t 的标准草案网址为h t t p :w w w w 3 o r g t r w i d g e t s 。 该规范包括一组子规范【9 】: t h e w i d g e t s a p i s s p e c i f i c a t i o nd e f i n e sa p l st o s t o r e p r e f e r e n c e sa n d c a p t u r ee v e n t sf o rw i d g e t s t h e w i d g e t s d i g s i g d e f i n e sam e a n sf o rw i d g e t st ob ed i g i t a l l ys i g n e d u s i n gac u s t o mp r o f i l eo ft h ex m l s i g n a t u r es y n t a xa n dp r o c e s s i n g s p e c i f i c a t i o n t h e w i d g e t s s e c u r i t y s p e c i f i c a t i o nd e f i n e sas e c u r i t ym o d e lt or e d u c e p r i v a c yr i s k sa n dp o t e n t i a ld a m a g et o a ne n d - u s e r s c o m p u t e ro rm o b i l e d e v i c e t h e 【w i d g e t s - u p d a t e s 】s p e c i f i c a t i o nd e f i n e sav e r s i o nc o n t r o lm o d e lt h a t a l l o w sw i d g e t st ob ek e p tu p - t o d a t eo v e rh t t p 9 1 该规范定义了w i d g e t 需要支持的文件格式以及引擎的实现需要符合的相关标 4 第二章w i d g e t 概述 准: a w i d g e tu s e ra g e n tm u s ts u p p o r tt h ef o l l o w i n gs p e c i f i c a t i o n sa n df i l ef o r m a t s : 【z i p ,b u tw i t ht h ee x c l u s i o n sl i s t e di nt h ez i ps u p p o r ts e c t i o n p n g , g i f 8 7 1 ,a n d j p e g a n d g i f 8 9 】i m a g ef i l e sf o r m a t s 【x m l a n d x m l n s d o m 3 c o r e 【n t m l 4 x m l h t 币r e q u e s t e c m a s c r i p t u i 甲一8 】 【d e f l a t e aw i d g e tu s e ra g e n tm a ya l s os u p p o r tt h ef o l l o w i n gf i l ef o r m a t sa si c o n s : i c 0 1 s v g t i n y 9 1 2 3 2w i d g e t 研究现状 2 3 2 1y a h o o ! w i d g e t y a h o o ! w i d g e t 采用一套私有的x m l 标记语言( 类似于h t m l ) ,来提供强大 的表现能力;4 5 版本以后增加了对h t m l 和f l a s h 的支持,引擎对h t m l 的支持使 得其他基于h t m l 制作的w i d g e t 很容易地移植到y a h o o 的引擎上运行。 针对移动设备,y a h o o ! 发布了y ! m o b i l ew i d g e t s 。w i d g e t 的支持是y a h o og o 3 0 的重要部分。y a h o og o3 0 很快将发布3 5 种手机( 黑莓,索爱和诺基亚) 的版本, 其客户端引擎既包括n a t i v e 的版本,也包括j 2 m e 的版本。 y a h o om o b i l ew i d g e t s 没有使用任何脚本语言,而是采用一种基于x f o r m s 的 新语言:b l u e p r i n t 当开发者创建y a h o om o b i l ew i d g e t s 时,平台还会自动创建一 个w e b 版本供浏览器访问【l o 】。 在w 3 c 的w i d g e t 需求文档中见到有对y a h o ow i d g e t 的描述,但y a h o o 对w 3 c 标准的支持情况还不清楚,从资料来看其m o b i l ew i d g e t 与w 3 c 标准差异很大。 2 3 2 2n o k i aw i d g e t s n o k i aw i d s e t s ( 维信1 ,功能较弱,仅具备初级的w i d g e t 能力,可用来支持r s s 阅读、时钟、邮件收发等;采用x m l 、c s s 、脚本语言h e l i u m ,不支持j a v a s c r i p t 。 5 电子科技大学硕士学位论文 其客户端引擎采用j 2 m e 实现,可以适配到大量支持m i d p 2 0 的手机上,包括各 种非n o k i a 的手机【l l 】。 采用h t m l + c s s + j a v a s c r i p t 来设计制作,其w e b 引擎基于w e b k i t ,具备较完 备的w e b 支持能力,但因此也只能运行在$ 6 0v 3 2 以上的较高端的s y m b i a n 手机 上;n o 虹aw i d g e t s 当前版本扩展的a p i 较少,对本地能力的访问限制较大;所有 n o k i aw i d g e t 都是单页面的应用,页面中对于任何l i n k 的点击都将传到浏览器进 行浏览【1 2 1 。 从用户的角度来看,n o l ( i aw i d g e t s 在安装、更新、运行、卸载等方面与普通 s y m b i a n 应用没有什么差别;目前还不支持多个w i d g e t 同时运行在桌面上。 2 3 2 3a p p l ed a s h b o a r d d a s h b o a r d 同样基于w e b k i t ,其页面设计完全基于普通的w e b 技术,对于 w e b 2 0 有极好的支持。同时,d a s h b o a r d 针对m a co s 扩展了较丰富的a p i ,以充 分利用m a co s 的强大能力,但兼容性也因此有所损失。d a s h b o a r d 还扩展了一 些新标签以增强其表现能力,这些标签被部分纳入了w 3 c 的规范草案。d a s h b o a r d 在i p h o n e 上有很好的表现,并针对i p h o n e 扩展了与p h o n e 相关的一系列a p i 。一 般来说,n o k i a 、o m s 等基于w e b k i t 的w i d g e t 引擎,对于d a s h b o a r d 都具有较好 的兼容性。在高端的智能手机领域,基于w e b k i t 及d a s h b o a r d 的w i d g e t 解决方案, 由于其较强的能力和对w e b 2 0 的良好支持,将具有较强的竞争优势【1 3 】。 2 3 2 4o p e r aw i d g e t s o p e r aw i d g e t 完全支持标准w 3 c 标准、c s s 、j a v a s c r i p t 、a j a x 和h t m l 语 言。同时,o p e r a 提供的软件开发套装( s d k ) 可以为w e b 应用程序开发者提供 基于o p e r a 的w e b 应用程序制作能力,开发者可以为新的o p e r a 浏览器开发各 种窗口小工具。开发工具可同时支持应用在w i n d o w sm o b i l e 、s y m b i a n 手机、和 w i i 平台的移动版o p e r a 浏览器。 2 3 2 5o p e n f a c e o p e n f a c e 基于开源项目o p e n l a s z l o ( h t t p :w w w o p e n l a s z l o o r e , ) , 有一套自己的语言;目 前仅有s y m b i a nv 3 和w i n d o w sm o b i l e 的实现,是目前较有影响力的w i d g e t 引擎。 6 第二章w i d g e t 概述 2 4w i d g e t 相关技术的介绍 2 4 1 - i t m l 技术介绍 早期的h t m l 语法被定义成较松散的规则,以有助于不熟悉网络出版的人采 用。网页浏览器接受了这个现实,并且可以显示语法不严格的网页。随着时间的 流逝,官方标准渐渐趋于严格的语法,但是浏览器继续显示一些远称不上合乎标 准的h t m l 。使用x m l 的严格规则的) a i 聊l ( 可扩展超文本置标语言) 是w 3 c 计划中的h t m l 的接替者。虽然很多人认为它已经成为当前的h t m l 标准,但 是它实际上是一个独立的、和h t m l 平行发展的标准。w 3 c 目前的建议是使用 x h t m l1 1 、x h t m l1 0 或者h t m l4 0 1 进行网络出版【1 4 】。 x h t m l ( t h ee x t e n s i b l eh y p e r t e x tm a r k u pl a n g u a g e ) 是一个基于x m l 的置 标语言,主要为基于x m l 的用户代理设计。2 0 0 0 年底,国际w 3 c ( w o r l dw i d ew e b c o n s o r t i u m ) 组织公布发行了x h t m l1 0 版本。x h t m l1 0 是一种在h t m l4 0 基础上优化和改进的新语言,目的是基于x m l 来开发应用,它的可扩展性和灵 活性将适应未来网络应用更多的需求。x m l 虽然数据转换能力强大,完全可以替 代h t m l ,但面对成千上万己有的基于h t m l 语言设计的网站,直接采用x m l 还为时过早。因此,在h t m l 4 0 的基础上,用x m l 的规则对其进行扩展,从而 产生了x h t m l 。所以,建立x h t m l 的目的就是实现h t m l 向x m l 的过渡l l 引。 x h t m l 是当前h t m l 版的继承者。h t m l 语法要求比较松散,这样对网页 编写者来说,比较方便,但对于机器来说,语言的语法越松散,处理起来就越困 难,对于普通的计算机来说,具备足够的能力兼容松散语法,但对于许多其他硬 件能力相对较弱的设备,比如手机等掌上设备,处理的难度就比较大。因此产生 了由d t d 定义规则,语法要求更加严格的x h t m l 1 6 j 。 从h t m l 过渡到x h t m l 的变化比较小,主要是为了最终转移到适应x m l 。 其中最大的变化在于文档必须是良构的,所有标签必须闭合,也就是说开始标签 要有相应的结束标签。由于x h t m l 是一种,x m l 应用与h t m l 相比,x h t m l 具有以下重要的区别: 标签必须是具有良好的结构:所有的标签必须有与之配对的关闭标签,标签 之间必须合理的嵌套;因为x h t m l 要求有严谨的结构,因此所有的嵌套都 必须按顺序,l l ! t l :l 是错误的,必须修改为: ,要求一层一层的嵌套必须是严格对称【1 7 j 。 7 电子科技大学硕士学位论文 x h t m l 中所有的标签以及属性必须小写:文档中必须使用小写的元素,由 于x m l 是大小写敏感的,所以这是必须的约束; 对于非空标签,结束标签也是不可缺少的:在h t m l 4 中,一些标签是允许 省略结束标签的,然而,x m l 语法规则不允许省略,任何标签需要严格配对; 比如i m g 、b r 等,也都必须闭合,实现的方式是在开始标签末尾加入斜扛, 所有的属性必须用引号括起来:在h t m l 中,引号不是必须的,当属性值是 数字、字母及其它允许的特殊字符时,可以不用引号;但是在x h t m l 中, 它们必须被加引号。 把所有 和& 特殊符号用编码表示:因为 和作为标记的组成部分,任何小于 号( ) ,不是标 签的一部分,都必须被编码为& g t ;任何与号( & ) ,不是实体的一部分的, 都必须被编码为& a m p ; 用c d a t a 块将脚本和样式的内容包起来:解析器可以识别c d a t a 段,其 内容是不作为标签解析,下面是一段简单的脚本示例代码: 所有属性都必须赋值:x h t m l 规定所有属性都必须有一个值,没有值等效 于设置无效; x h t m l 的现行规范有以下几个版本1 8 】: 1 ) x t m l l 0t r a n s i t i o n a l ,过渡型,标识语法要求较宽松,要求非常 宽松的d t d ,它允许继续使用h t m l 4 0 1 的标识,但是要符合x t m l 的写法。d t d 声明如下: 2 1 ) x h t m l l 0s t r i c t ,严格型,标识要求达到以上x h t m l 相比于 h t m l 的所有改动要求严格的d t d ,它不能使用任何表现层的标识和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 奋斗的班会模板课件
- 初中语文教资面试2026易错题题库及答案
- 小学语文教资面试答辩题库及解析
- 心理护理沟通交流
- 骨折术后患者的护理常规
- 房地产建设课件
- 压疮的预防及护理要点
- 风电场安全规程课件
- 分层作业英语课件
- 防参与非法集资课件
- 停车场电力施工方案
- 《碳中和原理与技术》全套教学课件
- 2027贵州航天电器秋季招聘284人笔试备考试题及答案详解
- ISO 15510-2024 中文版(不锈钢 化学成分和交货技术条件)
- 2026国家保安员资格考试题库及答案(真题汇编)
- 兵团职工考试试题及答案
- 2026上半年教师资格证面试《高中历史》简案+逐字稿
- ISO 20400-2017 可持续采购指南培训课件
- 2025年国家开放大学(电大)《市场营销学概论》期末考试复习题库及答案解析
- GJB573B-2020 引信及引信零部件环境与性能试验方法
- 交通支持系统船舶建造(购置)项目可行性研究报告编制办法(试行)
评论
0/150
提交评论