(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf_第1页
(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf_第2页
(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf_第3页
(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf_第4页
(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf_第5页
已阅读5页,还剩76页未读 继续免费阅读

(计算机应用技术专业论文)插件式web网站快速开发工具的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 同新月异的w e b 技术正深刻地改变软件,基于w e b 浏览器的应用将成为计算机 行业未来1 0 年的主导。自从1 9 9 1 年互联网诞生以来,它就以史无前例的神奇速度成 就了y a h o o 、e b a y 、g o o g l e 等超级企业的非凡成就,更以诸多激动人心的特性改变得 人类世界。如果说w e b 改变世界,这一事实都会被人们所接受。建立依托w e b 的企 业应用平台已经成为大部分企业的首要选择。 然而,纵观今天的w e b 开发技术,以下普遍性问题依然没有得到有效的解决: 首先,w e b 开发的复杂度没有降低,一个合格的w e b 应用开发人员需要掌握的基础 知识和技能实在太多,造成了较高的门槛;其次,w e b 开发的效率没有提升,组件技 术是提升软件复用度,进而提高软件开发效率的良好手段,但目前的w e b 技术缺乏 一种统一、标准的组件技术;再者,w e b 应用的人机交互体验没有得到提升,人们一 直盼望w 曲应用拥有像桌面应用一样优秀的人机交互体验,a j a x 技术虽然是解决这 些问题的有效手段,但不可否认的是开发与维护的成本过高;最后,w 曲应用的浏览 器兼容性没有很好地解决。 因此,整个业界都需要一个能有效解决以上问题的w e b 丌发框架。目前,主流 的w e b 开发框架是j 2 e e 和n e t ,但是两大主流丌发平台也面临一些问题,如用户学 习曲线过高,导致学习成本居高不下;开发效率有待提高;对用户体验关注不足及缺 乏大粒度可复用组件等缺点。 作为一个优秀的w e b 开发框架,应该考虑四个方面的问题:第一,解决数据的 展现、录入与编辑以及页面及组件的布局问题,第二,解决交互问题及兼容主流的浏 览器;第三,能提供后台存储,事务、安全、分布式计算等基础服务,第四,良好的 工具支持,提供所见即所得的可视化设计、拖拽式操作、一体化的操作过程来提升丌 发效率。 本论文充分研究了w e b 开发的相关技术,开发了- 套轻量级的动态网站丌发框 架,该框架以提供大复用粒度,交互性强的插件为核心,以组合的方式来构建动态网 站。本文研究的具体问题有: 1 分析网站丌发的现状与存在的问题 结合当前的w e b 技术与网站开发工具,深入分析了目前网站开发中存在的问题。 2 网站结构及组成研究 为了提供复用粒度大的插件来快速构建w e b 应用系统,在实践的基础上对目前 的网站进行分类,研究各类网站的结构及组成,从中抽象出公共的模块作为插件。 3 插件及页面插件的研究和丌发 插件和页面插件是w e b b u i l d e r 工具的核心,本文从插件及页面插件的引入、组 成、表现形式及工作原理进行深入的分析。并开发了日历、按钮、自动表单、树、标 签页、数据表格、布局管理器、复选框、单选框组合编辑器、菜单等十多种插件。 4 基于a j a x 表现层技术的研究 a j a x 表现层技术是实现富浏览器客户端的关键。w e b b u i l d e r 中的插件虽然是表 现层的组件,但它不仅负责页面的展现,还要负责部分逻辑的处理。本文重点对客户 端m v c 模式进行研究,并构建了基于数据模型驱动的表现层丌发框架。 5 w e b b u i l d e r 工具的开发 w e b b u i l d e r 以插件+ 平台的方式来构建。本文重点实现了w e b b u i l d e r 开发工具中 的数据模型部件、数据更新部件、数据库处理部件、插件管理部件、页面插件管理部 件及页面解析与处理部件。 本文的独特之处在于: 1 客户端m v c 模式 本文对传统m v c 模式进行重构,引入客户端的m v c 模式。以此为基础构建基 于数据模型驱动的表现层丌发框架。 2 多账套机制与数据空间 w e b b u i l d e r 实现了对象关系型数据映射,并引入数据空间的概念,数据空间是真 实数据源( 连接或数据库) 的代理,一个系统模型中可以定义多个数据空间表明系统 可能需要多个真实的数据源。引入数据空间的概念主要用于屏蔽具体的数据库产品, 并智能操作和管理数据库,数据空间在系统运行前需要实体化到具体的数据源。 关键词:h j a x ;表现层:数据模型驱动;插件;页面插件:视图模型 r e s e a r c ha n di m p l e m e n to fq u i c kd e v e l o p m e n tt o o lf o rw e b s i t eb a s e do np l u g i n n a m e :l i uy o n g c o m p u t e ra p p l i e dt e c h n o l o g y s u p e r v i s o r :h a nx i a n z h o n g a b s t r a c t w e bt e c h n o l o g i e sa r ec h a n g i n gp r o f o u n d l yt h es o f t w a r e ,aw 曲b r o w s e rb a s e do nt h e a p p l i c a t i o no ft h ec o m p u t e ri n d u s t r yw i l lb e c o m et h ed o m i n a n ti nt h en e x t10y e a r s s i n c e t h eb i r t ho ft h ei n t e r n e ti n19 91 ,i t sa m a z i n gs p e e dt ou n p r e c e d e n t e ds u c c e s s ,y a h o o ,e b a y , g o o g l e ,t h ee x t r a o r d i n a r ya c h i e v e m e n t so fs u p e re n t e r p r i s e s ,b u ta l s ot ot h ec h a r a c t e r i s t i c s o fm a n ye x c i t i n gc h a n g e si nt h eh u m a nw o r l d i ft h ew 曲c h a n g e dt h ew o r l d ,t h ef a c t m i g h tb ea c c e p t e db yt h ep e o p l e r e l y i n go nt h e e s t a b l i s h m e n to fw 色b a p p l i c a t i o n 。,p l a t f o r mh a sb e c o m et h ef i r s tc h o i c eo fm o s te n t e r p r i s e s h o w e v e r , l o o k i n gb a c ka tt o d a y sw 曲t e c h n o l o g yd e v e l o p m e n t ,t h ef o l l o w i n g u n i v e r s a l i t yo ft h ep r o b l e ms t i l lh a sn o tb e e ns o l v e de f f e c t i v e l y :f i r s t ,t h ec o m p l e x i t yo f w e bd e v e l o p m e n th a sn o td e c r e a s e d ,aq u a l i f i e dw e ba p p l i c a t i o nd e v e l o p e r sn e e dt oh a v e t h eb a s i ck n o w l e d g ea n ds k i l l si st o om u c h ,r e s u l t i n gi nah i g ht h r e s h o l d ;s e c o n d l y , t h e w 曲d o e sn o te n h a n c et h ee f f i c i e n c yo fd e v e l o p m e n t ,c o m p o n e n tt e c h n o l o g yi sag o o d m e a s u r ew h i c hc a ne n c h a n c es o f t w a r er e u s a g ea n dt h ed e v e l o p m e n te f f i c i e n c y , b u tn o wt h e w e b e x p e r i e n c ei ss h o r to fau n i f o r ma n ds t a n d a r dc o m p o n e n tt e c h n o l o g y f u r t h e r m o r e ,t h e a p p l i c a t i o no fm a n m a c h i n ei n t e r a c t i v ew | e be x p e r i e n c ed i dn o ti m p r o v et ot h ep e o p l eh o p e t h a tw 曲a p p l i c a t i o n sl i k ed e s k t o pa p p l i c a t i o n sw i t ht h es a m ee x c e l l e n tm a n m a c h i n e i n t e r a c t i v ee x p e r i e n c e ,a l t h o u g ha j a xt e c h n i c a ls o l u t i o ni sm o r ee f f e c t i v em e a n so f p r o b l e m ,b u ti ti s u n d e n i a b l et h a tt h ed e v e l o p m e n ta n dm a i n t e n a n c eo ft h ec o s t sa r et o o h i 曲;f i n a l l y , t h ew 曲b r o w s e ra p p l i c a t i o nc o m p a t i b i l i t yh a sn o tb e e nr e s o l v e d t h u s ,t h ee n t i r ei n d u s t r yn e e d sa l le f f e c t i v es o l u t i o nt ot h ea b o v ep r o b l e mo fw e b d e v e l o p m e n tf r a m e w o r k a tp r e s e n t ,t h em a i n s t r e a mw e bd e v e l o p m e n tf r a m e w o r ki sj 2 e e a n d n e t b u tt h et w om a i n s t r e a md e v e l o p m e n tp l a t f o r m sa l s of a c ew i t hs o m ep r o b l e m s , f o re x a m p l ee x c e s s i v eu s e rl e a r n i n gc u r v e ,r e s u l t si ns o m es h o r t c o m i n g s ,s u c ha st h eh i g h c o s to fl e a r n i n g ;d e v e l o p m e n te f f i c i e n c yn e e d st ob er a i s e do nt h el a c ko fu s e re x p e r i e n c e a n dt h el a c ko fc o n c e r nl a r g es i z er e u s a b l ec o m p o n e n t s a sa ne x c e l l e n tw e bd e v e l o p m e n tf r a m e w o r ks h o u l dc o n s i d e rf o u ra s p e c t s : f i r s t ,t or e s o l v es o m ep r o b l e m s s u c ha st h ed a t as h o w , i n p u t t i n ga n de d i t i n ga n dp a g ea n d l a y o u to fc o m p o n e n t ,a n ds e c o n d ,t or e s o l v ep r o b l e m so fi n t e r a c t i o na n db r o w s e ro f c o m p a t i b i l i t ya n dm a i n s t r e a m ;t h i r d ,t op r o v i d eb a s i cs e r v i c e s ,s u c ha sb a c k g r o u n ds t o r a g e , s e r v i c e s ,s e c u r i t y , a n dd i s t r i b u t e dc o m p u t i n g ,f o u r t h ,ag o o dt o o ls u p p o r t ,w y s w y g v i s u a l d e s i g n ,d r a g - o p e r a t i o na n di n t e g r a t i v ep r o c e s sc a ni m p r o v e t h e o p e r a t i o n d e v e l o p m e n te f f i c i e n c y t h i sp a p e rs t u d i e st h ef u l l d e v e l o p m e n to ft h ew e bt e c h n o l o g i e sr e l a t e dt o t h e d e v e l o p m e n to fal i g h t w e i g h td y n a m i cw e bd e v e l o p m e n tf r a m e w o r k ,w h i c hp r o v i d e st h e f r a m e w o r kf o rr e u s es i z e ,i n t e r a c t i v es t r o n gp l u gf o rt h ec o r ea n dt h ec o m b i n a t i o no f m e t h o d st ob u i l dd y n a m i cw e b s i t e t h i sp a p e rs t u d i e st h es p e c i f i cp r o b l e m sa r e : 1 t oa n a l y z ed e v e l o p m e n ta c t u a l i t ya n de x i s t e n tp r o b l e m so ft h ew e b s i t e t h i sp a p e rw h i c hc o m b i n et h ec u r r e n tw e bt e c h n o l o g ya n dt h ew e b s i t ed e v e l o p m e n t t 0 0 1 ,e m b e d d e da n a l y z et h ec u r r e n te x i s t e n tp r o b l e m si nt h ew e b s i t ed e v e l o p m e n t 2 。s t r u c t u r ea n dc o m p o s i t i o no fas i t es t u d y i no r d e rt op r o v i d em u l t i p l e x i n gl a r g es i z ep l u g i nt oq u i c k l yb u i l dw e b a p p l i c a t i o n s , i np r a c t i c eo nt h eb a s i so ft h ec u r r e n ts i t ec l a s s i f i c a t i o n ,v a r i o u ss i t e so nt h es t r u c t u r ea n d c o m p o s i t i o n ,f r o mt h ea b s t r a c tt ot h ep u b l i ca sap l u g - i nm o d u l e s , 3 p l u g i np a g e sa n dt h er e s e a r c ha n dd e v e l o p m e n to fp l u g i n p l u g i n sa n dp l u g - i np a g e si st h ec o r eo fw e b b u i l d e rt o o l s ,t h ep a p e ra n dp a g e sf r o m t h ep l u g i n ,t h ei n t r o d u c t i o no fp l u g - i n s ,c o m p o s i t i o n ,f o r ma n dw o r k i n gp r i n c i p l eo fa n i n d e p t ha n a l y s i s a n dt h ed e v e l o p m e n to ft h ec a l e n d a r , b u t t o n s ,a u t o m a t i cf o r m ,t r e e ,t a b , d a t at a b l e s ,l a y o u tm a n a g e m e n t ,c h e c kb o x e s ,s i n g l e - b o xc o m b i n a t i o ne d i t o r , s u c ha sm o r e t h a n10k i n d so fp l u g - i nm e n u 4 a j a xb a s e do nt h ep e r f o r m a n c eo ft h et e c h n o l o g yr e s e a r c h a j a xp e r f o r m a n c eo ft h et e c h n o l o g yi st oa c h i e v et h er i c hb r o w s e rc l i e n t st h ek e y w e b b u i l d e ra l t h o u g ht h ep e r f o r m a n c eo ft h ep l u g i nc o m p o n e n t ,b u ti ti sn o to n l y r e s p o n s i b l ef o rt h ed i s p l a yo fp a g e s ,w i l la l s ob er e s p o n s i b l ef o rp a r to ft h el o g i c p r o c e s s i n g t h i sp a p e rf o c u s e so nt h ec l i e n tm v c m o d e ls t u d y , a n dt ob u i l dad a t am o d e l b a s e do nt h ep e r f o r m a n c eo ft h ed r i v e rd e v e l o p m e n tf r a m e w o r k 5 w e b b u i l d e rd e v e l o p m e n tt o o l s w e b b u i l d e r + p l a t f o r mp l u g - i nt ot h ew a yt ob u i l dt h es y s t e md y n a m i cw e b d e v e l o p m e n tp l a t f o r mo f f e r sv i s u a ld e v e l o p m e n te n v i r o n m e n t ,w h i l ep r o v i d i n gp l u g i n i n t e r f a c ea n dp l u g i np a g e s ;s y s t e ma sap l u g i ne x t e n s i o n s ,u s e r - f r i e n d l ym a n a g e m e n t i n t e r c a l a t i o na n dp l u g - i np a g e so f t h i sp a p e rf o c u so nt h ed e v e l o p m e n to ft o o l st oa c h i e v e aw e b b u i l d e ri np a r t so ft h ed a t am o d e l ,d a t au p d a t e dc o m p o n e n t s ,d a t a b a s ep r o c e s s i n g c o m p o n e n t s ,p l u g i nm a n a g e m e n tc o m p o n e n t s ,p l u g i np a g e sa n dp a g e sm a n a g e m e n t c o m p o n e n t sa n a l y s i sa n dp r o c e s s i n gc o m p o n e n t s t h i sp a p e ri su n i q u ei nt h a t : 1 a c l i e n t m v c m o d e l i nt h i sp a p e r , t h et r a d i t i o n a lm v cm o d e lr e c o n s t r u c t i o n ,t h ei n t r o d u c t i o no ft h em v c m o d e lc l i e n t c o n s t r u c t i o no nt h i sb a s i st h ep e r f o r m a n c ed a t am o d e l - d r i v e nd e v e l o p m e n t f r a m e w o r kl a y e r 2 z h a n gt a om e c h a n i s ma n dm o r et h a nt w od a t as p a c e w e b b u i l d e ra c h i e v et h e o b j e c t r e l a t i o n a l d a t a m a p p i n g ,s p a t i a l d a t aa n dt h e i n t r o d u c t i o no ft h ec o n c e p to fd a t as p a c ei sr e a ld a t as o u r c e ( o rd a t a b a s ec o n n e c t i v i t y ) a g e n t s ,as y s t e mm o d e ls p a c ec a nb ed e f i n e dm u l t i p l ed a t as h o wt h a tt h es y s t e mm a y r e q u i r em u l t i p l es o u r c e so fd a t a t h ei n t r o d u c t i o no ft h ec o n c e p to fs p a t i a ld a t af o rt h e m a i ns h i e l d i n gs p e c i f i cd a t a b a s ep r o d u c t s ,a n di n t e l l i g e n to p e r a t i o na n dm a n a g e m e n to f d a t a b a s e s ,d a t as p a c ei nt h ep r e - o p e r a t i o n a ls y s t e mt ot h es p e c i f i cn e e d so ft h ee n t i t i e so f t h ed a t as o u r c e k e y w o r d s :a j a x ;p r e s e n t a t i o nl a y e r ;d a t am o d e ld r i v e n ;p l u g i n ;p a g ep l u g - i n ;v i e w m o d e l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经 发表或撰写过的研究成果,也不包含为获得塑皇垦垒些盘鲎或其他教育机构的学 位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示谢意。 学位论文作者签名:孑j 旁 签字同期:汐白够年6 月厂同 学位论文版权使用授权书 本学位论文作者完全了解塑i 堡壅些盘堂有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借 阅。本人授权煎兰垦盔些盘堂可以将学位论文的全部或部分内容编入有关数据库进行 检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 易7 务 签字同期: 咖万年歹月j 同 学位论文作者毕业后去向: 工作单位: 通讯地址: 电话: 邮编: 同 插件式w e b 网站快速开发一i :具的研究与实现 1 1 研究背景 l 引言 尽管诸多开发工具经过多年的发展,已经在很大程度上提高了网站开发的效率、降低了开 发的难度,但是,在现在实践中,仍然存在许多的难题和困难,可以归纳为以下四个方面: 1 1 1 网站开发的复杂度没有降低 网站开发的难度从三个方面来体现:首先是页面开发的难度,w e b 应j = i j 程序都是基于页面 的,主要靠h t m l 来显示内容,精细的页面布局;细小繁杂的页面元素:相同内容在多种不同 表现界面之间的变换;页面内容的修改;页面设计存在非常人的手1 :】:作量;存在人鼙重复类 似的工作量等等。这些因素都给页面的开发带来了很人的凼雉;其次是网站组织的难度,人鹫 页面的组织、大量页面相关资源的组织、页面之间的跳转等等,网站组织也存在人量手j i :1 :作 量,存在大量重复类似的工作;第三是动态页面开发的因难,动态内容和页面布局之间的协调; 代码所控制的页面表现的变化:延续了传统数据库应用开发的所有困难:动态页面设计存在1 卜 常大的手工工作量;存在大量重复类似的工作量。由上可见,开发一个好的网站需要具备很多 基础知识和技能,如h t m l 、c s s 、d h t m l 、j a v a s c r i p t 及w e b 开发语言等等。这些冈素都提高了 开发的门槛,造成了入门者学习的曲线过高,同时也加大了学习的成本。 1 1 2 网站开发的效率没有提升 网站是由大量的页面组成的,页面是由一个个页面元素组合而成的。一个人犁的网站项目 的页面少则上千个,这就意味着网站页面开发的j r 作鼙非常人。目前主流的开发i :具为网站的 开发提供了便捷,但元素复川粒度较小,没有统一、标准的组什都造成了网站开发的效率仍然 很低。 , 1 1 3 网站开发的人机交互体验没有提高 w e b 应用以简单的部署,丰富的表现成为了软件应用的主流,人们在享受w e b 虑川带米 的便捷的同时也渴望它拥有桌面应用那样优秀的人机交互。 1 1 4 网站的兼容性问题没能很好解决 浏览器厂商在生产浏览器时,为了保持向后的兼容性,并没有完全遵遁w 3 c 的标准,他 们采川两种模式,一种是标准模式,一种是怪异模式。两种模式对页面的表现有很人著异。 由于对w 3 c 标准的实现有所不同,则导致网站在不同浏览器间切换时的兼容性问题。 河北农业大学硕士学位( 毕业) 论文 1 2 研究意义 针对网站开发乃至整个w e b 开发,业界都在积极探索,采取各种方法和技术来解决上述问 题,目前通常的解决办法及技术有以下几个方面: 1 ) 开发工具的改进。这方面的代表有b e a 的w o r k s h o p 、s u n 的n e t b e a n s 和微软的v i s u a l s t u d i o 等等,这些工具都提供更加完善的解决方案来让开发者更快捷的创建应川程序。开发ji : 具越强大,功能提供越完善,复杂度就会有所提高。所以在面对这些复杂:i :具的选抒和学习让 初学者不知所措。并且在提供复用粒度较大的组件及关注用户体验等方面这些工具的关注度还 远远不够。 2 ) 新技术的使用。w e b 开发技术中的代表就数a j a x 技术了,a j a x 技术为提升w e b 应用 程序人机交互体验提供了很好的解决方案,但是a j a x 开发和维护的成本短时间内很难让用户接 受。另外,a j a x 技术在性能及安全性方面也一直饱受争议。a d o b e 公司开发的f l e x 及m a c r o m e d i a 公司的f l a s h 技术也为构建富客户端w e b 应用提供很好的解决方案。 3 ) 软件复用技术。目前常用的复用策略有:代码段的复制和修改、页面的复制和修改、数 据库的复制和修改等。基于复制、修改的复用策略是一种最基本的复用方法,相对于从零开始 的开发有了较大幅度的效率提高,但是人:【:的:l :作量仍然很大,仍然有较人的效率提升空间。 目前很多企业应用系统建立在w e b 基础上,建立依托w e b 的企业廊川平台己成为企业应 用开发的主流趋势,w e b 应用程序的需求在不断增加。如何快速构建w e b 应用程序框架? 如 何提高w e b 应用程序的可重用性,可扩展性和可维护性都成目前要解决的主要问题。 本文通过对w e b 相关技术的研究,开发一种插件式w e b 动态网站的开发j 1 :具 ( w e b b u i l d e r ) ,是一种面向问题与业务的快速w e b 开发具,它在标准的w e b 开发技术的 基础上,通过对更大粒度页面元素、代码元素及其他资源的重用、借助白动化编程技术及代码 生成技术,从而实现w e b 开发效率的大幅提升。同时,w e b b u i l d e r 引入a j a x 引擎来构建基丁 富客户端的w e b 应用程序,来解决w e b 应用的人机交互问题。 1 3 国内外研究现状 首先是从现有的w e b 快速开发工具来看,主要分为标准w e b 开发:【:具和网站内容管理系 统两大类。 标准w e b 开发工具,如d r e a m w e a v e r 、v i s u a ls t u d i o ,i d e v 等。标准w e b 开发j j :具功能强 大,但是对开发者来说也有一些问题,主要以下几个方面:一、对初学者来说i 、j 槛较高,需具 有一定的专业水平;二、缺少大粒度复用构件。对网站而言主要组成元素就是一个个页面,而 组成页面的是h t m l 构件,如a 、i n p u t 、s e l e c t 、d i v 、t a b l e 等。标准的开发:1 :具,就是面向上 述元素来进行网站及页面开发的,上述元素具有最小的粒度。元素的粒度越细小,控制的灵活 性就越高,但是开发效率可能就越低。 网站内容管理系统,内容管理台是以信息共享为目的,面向海量信息处理,集信息数字化、 分布存储、管理、传播、查询为一体的管理平台。内容管理具有四大功能:内容集成、内容管 2 插件式w e b 网站快速开发r = 具的研究与实现 理、内容智能发布和内容发布。网站内容管理的基本原理是把整个的内容分成不同的部分。把 文本图像和多媒体内容存储在分散空间内( 或是一个数据库或是一个分散的文件系统) ,而这 些分散的空间都与h t m l 模板连接。在所管理的内容中,可以包括文章、图片、投票、j | 告、 下载、多媒体文件,甚至可以嵌入论坛、留言板。利刚网站内容管理系统可以很方便的建立、 维护和管理一个网站。网站内容管理系统有很多,国内外的不少于1 0 0 种,但本质上是相似的, 以模块为主,栏目就是模块。通过在实践归纳总结有以下方面的不足: 一、操作复杂,用户上手难。大多数c m s 功能模块采i j 标签形式,在开发中将功能模块的标 签复制到的界面指定位置,再手:f 修改参数,所以用户得适应系统定义的各种功能模块标签, 开发不直观,增加开发难度;二、功能单一。多数只提供新闻文章、:卜载、影视、留言、论坛 等模块,适用于中小型网站的开发,不能搭建复杂类型的站点;三、只适用丁二结构层次明确, 结构比较简单的站点,如个人站点,中小企业的站点。如果对于大型企业的站点,同时几种产 品要求都有产品新闻,产品图片,产品介绍等无法满足,即类型相同的栏目放到不同的主栏目 时则应变能力不足;四、系统扩展性差,不支持独立二次开发,受现有架构影响较人:五、对 c s s 支持有限,生成的网站臃肿,难以应付访问量人的站点。国外优秀的c m s 也不少,如j o o m l a , d r u p a l ( 比利时) 、p l o n e 等。但对中文支持不好,大多数基7 - p h p ,p y t h o n 语言,国内用户比 较少。 再次,就目前的w e b 开发框架看,a s p n e t 和j s f 。a s p n e t 是基- f n e t 框架的w e b 开发框 架。j s f 则是一种用户构建w e b 应用的新标准的j a v a 框架。两者都是以组件为中心的开发方法 来进行w e b 界面的开发,以事件驱动的方式进行业务逻辑的植入,尽可能为开发人员提供 j a v a s c f i p t 和d h t m l 的编程。虽然都能离效的进行应用程序的开发,但对w e b 界面的表现力 和交互性没有兼顾。 最后,w e b 表现层方面的产品主要有离散控件架构、后台衍伸构架、展现中间件构架等。 表现层产品主要以a j a x 技术为主,但这方面成熟的产品还不多。 1 4 论文的组织 本论文余下章节的组织结构如下: 第二章主要讲述w e b b u i l d e r 工具所涉及到的相关技术的研究和探索。第一:h 研究a j a x 技 术概念和原理,以及对在实际开发中应用a j a x 的原则作了一些说明。第二:1 了主要研究a j a x 在 。表现层中的应用,提出了基于数据模型的表现层技术。第一- - 。l 。j 讲述了基于插件的软彳,| :复川技术 的应用。最后一部分深入分析对象模型与关系模型的联系与差别及o rm a p p i n g i :作原理,并 详细介绍了对象向关系映射的基本内容和方法。 第三章分析w e b b u i l d e r 开发工具的设计目标及具体的功能需求。对w e b b u i l d e rjf :具整体 结构进行了设计,并根据功能对其进行模块划分。 第四章详细介绍了w e b b u i l d e r 各组成部分的设计过程以及具体实现过程,并给出了各模块 中关键算法的实现步骤。主要包括数据处理部分、插件及插件管理部分、页面解析引擎与处理 部分、页面设计和网站设计部分的具体实现。 3 河北农业大学硕士学位( 毕业) 论文 第五章基于w e b b u i l d e r 工具的实践,通过开发一个具体的动态网站来对开发工具的各模块 功能进行测试。 4 插件式w e b 网站快速开发j :具的研究与实现 2 1 a ja x 技术 2 相关技术研究 过去的一年里,无论是从技术上还是从商业上,a j a x 都让人耳目一新。技术上,它极人地 发掘了w e b 浏览器的潜力。商业上,a j a x 广泛的应用也让普通火众对新一代的w e b 应用充满 期待。a j a x 技术几乎成为w e b 2 0 的代名词。 2 1 1 a j a x 技术的关键元素 a j a x 不是单一的技术,而是四种技术的集合 2 1 。表l 介绍这些技术以及它们在a j a x 中扮演 的角色。 表ia j a x 元素及作用 t a b l eic o n p o n e n t so f a j a xa n da c t i o n s j a v a s e r i p t j a v a s c r i p t 是通用的脚本语言,用来嵌入某种应用之中。w e b 浏览器中嵌入的 j a v a s c r i p t 解释器允许通过程序与浏览器的很多内建功能进行交互。a j a ) ( 应用程 序是使用j a v a s c r i p t 编写的。 c s s ( 层叠样式表) d o m ( 文档对象模 型) x m l h t t p r e q u e s t 对 象 c s s 为w e b 页面元素提供了一种可以重用的町视化样式的定义方法。它提供丫 简单而又强大的方法,以一致的方式定义和使用可视化样式。在a j a ) c 应用中, 用户界面的样式可以通过c s s 独立修改。 d 0 l i 以一组可以使用j a v a s c r i p t 操作的可编程对象展现出w e b 页面的结构。通过 使用脚本修改d o m ,a j b x 应用程序可以在运行时改变用户界面,或者高效地重 绘页面中的某个部分 x m l h t t p r e q u e s t 对象允许w e b 程序员从w e b 服务器以后台活动的方式状取数 据,数据格式通常是x m l ,但是也可以很好地支持任何基于文本的数据格式。 表1 中a j a x 的四个组件中,j a v a s c r i p t 定义了业务规则和群序流程。应用程序使川 x m l h t t p r e q u e s t 对象以后台的方式从服务器获取数据,通过d o m 利c s s 米改变界面的外观。 2 1 2a j a x 富客户端解决的问题 富客户端,就是指客户端的交互模型,要有多样化的输入方式雨i 符合直觉及时反馈手段。 就是要像桌面应用程序那样具有良好的人机交互。和传统的w e b 应用相比,引入a j a x 从以下 几个方面改善w e b 应用: 1 ) 良好的用户体验。根据n o r m a n 的情感化设计中的观点,体验分为三个层次3 】:感 观的、行为的和反思的。用户对一个应用或产品的体验是递增的,首先是感观的( 看起来怎么 5 河北农业大学硕士学位( 毕业) 论文 样) ,其次是行为的( 用起来怎么样) ,最反才是反思的( 对应j j 或产品进行探索和思考) 。 如果从第一感觉看上去不能满足用户的期望,用户很可能不再打算去使用这个产品,不会去和 这个产品进行交互,更不会去探索和思考产品的使用原理了。因此,良好的用户体验是检验产 品的一个很重要的指标。 2 ) 提供异步交互的能力,减少网络延时。在目前的技术水平之下,网络通信的代价还是非 常高昂的,网络的不稳定给基于w e b 的应用在效率方面带来很大损失。由丁网络延时是不可预 测的,所以网络延时是导致实际应用的交互性糟糕的一个普遍原因1 4 i 。a j a x 的:l 作原理就相当 于在浏览器和服务器之间加了一个中间层,使用户操作与服务器响应异步化。中间层所要做的 工作都是a j a ) 【引擎完成的。a j a ) 【引擎就是封装的j a v a s c r i p t 脚本,通过调用x m l h 郇r e q u e s t 对象的属性和方法来与服务器端进行数据交互,然后利用d o m 来解析处理x m l 文档和部分 更新h t m l 页面的内容。当用户通过浏览器提交请求时,请求数据将会发送给a j a x 引擎。a j a x 引擎捕获用户输入的请求数据然后再向服务器发送请求,此时,浏览器不h j 等待服务器的响应。 因此用户可以继续输入数据。同时用户屏幕上的表单不会闪烁、消失或延迟。服务器处理完州 户请求之后,返回处理结果并改变h t t p 就绪状态,一且h t t p 就绪状态发生改变,a j a x 引擎 就会调用相应的回调函数来接收这些处理结果并将它们更新到页面的指定部分,浏览器无需刷 新整个页面就能更新页面的部分内容,这样,就会让用户感觉到廊刚程序是立即完成的,表单 没有提交而页面的部分内容就发生改变,使得w e b 浏览器看起来就像即时响应的桌

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论