




已阅读5页,还剩56页未读, 继续免费阅读
(计算机软件与理论专业论文)基于net辅助教学平台的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 1 0 0 7 8 5 1 随着融合影像、语音和数据等多媒体信息网络技术的成熟,以及 i n t e r n e t 的不断普及,使得网上教学获得了前所未有的强大技术支持手段。 教学平台是适合校园网、通用性强的软件,提供个支持师生在网上进行 课上和课下教学活动的环境。结合上海海事大学的硬件设施和教学情况, 建立辅助教学平台显得尤为重要和迫切。 本论文基于n e t 环境的体系结构之上的辅助教学平台的开发技术,使 用全新的面向对象语言c # ,结合a s p n e t 技术,a d o n e t 技术设计和实现了 辅助教学平台。 论文首先介绍了系统开发的背景,教学平台的发展现状和发展趋势, 并对开发模式、开发平台、开发语言等进行了分析和比较,确定采用b s 模式、n e t 平台、c # 语言的系统来满足系统需求,然后对多层体系结构、n e t 框架进行了介绍,并着重介绍了系统开发过程中涉及到的a d o n e t 、 a s p n e t 、x m l 等关键技术。在此基础上,论文介绍了基于n e t 的辅助教学 平台的解决方案,教学平台的框架和总体设计。最后主要从数据层、业务 层和表示层这三层体系结构的角度重点阐述了基于n e t 辅助教学平台的设 计和实现方式。 关键词:教学平台、辅助教学平台、多层体系结构、a s p n e t ,a d o n e t 、n e t 框架 a b s t r a c t r e c e n t l y ,t h em u l t i m e d i at e c h n i q u en e t w o r k ,i n c l u d i n gv e d i o 。s o u n d a n dd a t a ,h a sb e e ng r e a t l yd e v e l o p e da sw e l la si n t e r n e t t e a c h i n go n i n t e r n e th a sr e c e i v e ds t r o n gt e c h n i c a l s u p p o r t t e a c h i n gp l a t f o r mo n i n t er n e ti sal e a r n i n gs e t t i n gf i tt oc a m p u s - w i d en e tw h i c hi sf o u n d e do n t h eb a s i cn e te s t a b l i s h m e n t 。i t p r o v i d e st e a c h e r sa n ds t u d e n t s a c o n v e n i e n te n v i r o n m e n tf o re d u c a t i o nj na n do u tc l a s s i nv i e wo fh a r d w a r ee s t a b | i s h m e n ta n ds c h o o la c t i v i t i e si ns h a n g h a i m a r i t i m eu n i v e r s i t y ,i tb e c o m e sv e r yu r g e n tt oe s t a b l i s ha s s i s t a n t t e a c h i n gp l a t f o r mc o m b i n i n gw i t ht h ec o n d i t i o no fo uro w nc a m p u s i nt h i st h e s i s ,t h ea s s i s t a n tt e a c h i n gp l a t f o r mi s d e s i g n e da n d i m p l e m e n t e db ya p p l y i n gt h en e wo o pl a n g u a g ec 群a n da s p n e t b a s e do n ,n e ta r c h i t e c t ur e t h et h e s i sf ir s ti n t r o d u c e st h eb a c k g r o u n do f p l a t f o r m ,a n dt h e n a n a l y s e sa n dc o m p a r e st h ed i f f e r e n tm o d e 。e n v i r o n m e n ta n dl a n g u a g e o fd e s i g nt oc h o o s eb sm o d e n e te n v i r o n m e n ta n dc 撑p r o g r a m m i n g l a n g u a g e a f t e r w a r d ,t h e t h e s i s p r e s e n t s n - t i e rf r a m e w o r k ,n e t f r a m e w o r k a d o n e ta n dx m l a tl a s t ,f r o mp o i n to fv i e wt h ed a t at i e r b u s i n e s st i era n dp r e s e n t a t i o nt i ert h et hr e e t i e ra r c h i t e c t u r e t h e t h e s i se x p l a i n sh o wt od e s i g na n di m p l e m e n ta s s i s t a n tt e a c h i n g l e a r n i n g p l a t f o r ma c c o r d i n gt o ,n e te n v ir o n m e n t , k e y w o r d s :t e a c h i n gp l a t f o r m ,a s s i s t a n tt e a c h i n gp l a t f o r m , a d o n et n e tf r a m e w o r k a sp n e t q i a n s a i w e i ( c o m p u t e rs o f t w a r ea n dt h e o r y ) d i r e c t e db yp r o f z h u c h u n h e i i 论文独创性声明 本论文是我个人在导师指导下进行的研究工作及取得的研究成果。 论文中除了特i i i i 以标注和致谢的地方外,不包含其他人或者其他机构 已经发表或撰写过的研究成果。其他同志对本研究的启发和所做的贡献 均已在论文中作了明确的声明并表示了感谢。 作者签名:滥逖日期:趟:凼 论文使用授权声明 本人同意上海海事大学有关保留、使用学位论文的规定,即:学校 有权保留送交论文复印件,允许论文被查阅和借阅;学校可以上网公布 论文的全部和部分内容,可以采用影印、缩印或者其它复制手段保存论 文。保密的论文在解密后遵守此规定。 基于n e t 辅助教学平台的设计与实现 1 1 论文背景 1 1 1 教学平台发展现状 第一章前言 计算机和网络技术日新月异的发展,正在迅速地改变我们传统的生活、 工作和学习方式。融合影像、语音和数据等多媒体信息网络技术的成熟, 以及i n t e r n e t 的不断普及,使得网上教学获得了前所未有的强大技术支持手 段。 网络教学平台1 1 】是建立在网络基础设施之上的、用计算机编程实现的学 习环境,它的后台是一系统程序和被程序组织起来的数据库,它的前台是 网页界面。网络教学平台f2 j 是适合校园网、通用性强的软件,提供一个支持 师生在网上进行课上和课下教学活动的环境,教师可以方便地在网上进行 授课、管理学生、交流信息和考核学生。学生可通过网络平台完成整个的 学习过程,包括注册、阅读新闻、查看资料、下载教案、交流讨论、在线 测试等一系列学习活动。教师可方便地把课件、讲义、通知、作业等发布 给学生;学生能阅读到老师的讲课内容,复习方便,减轻了课上记笔记的 任务量。教师和学生可以在网上以各种形式进行交流,获取信息更容易、 信息量更大,学生交作业更方便,提高了学习效率。教学资料和数据可以 方便地导入和导出,重复利用率大大提高,减轻了教师和学生的负担。 1 1 2 教学平台的发展趋势 目前教学平台开发的热点主要是集中于网上教学管理系统和教学支持 系统的开发,对教学过程提供全面但是比较基础的支持。网上教学平台在 未来将向以下几个方向发展: ( 1 ) 加强教学辅助功能,提高教学支持系统的智能性【3 1 。如在教学支 基于n e t 辅助教学平台的设计与实现 持系统中运用智能代理技术,以帮助老师更轻松地教、学生更好地学。 ( 2 ) 提供开发交互性网上课程的工具【甜,例如用x m l 替代h t m l 进 行网上课程的开发。 ( 3 ) 加强网上教学系统的安全性,同时将借鉴电子商务的成熟技术, 从而真正实现虚拟学校的完整运作。 ( 4 ) 平台的模块化、可拆装化将成为另一个发展趋势。 ( 5 ) 提供课程内容等资源库管理方式,以便有效地组织和利用多门课 程的资源。 ( 6 ) 提供多种体现教育思想的课程开发设施和课程讲授工具,特别是 协作学习的组织工具,以充分利用w e b 优势,保证课程的教育质量。 1 1 3 选题背景 近年来,国内许多高校都进行了大规模的校园网络建设,并连入国际 互联网。但是大多数高校投入的资金往往都用在了网络基础设施建设上, 而网络教育需要的软件资源的建设却被忽略,造成校园网的“高速公路” 上没有“车”,“车”上没有“货”的尴尬局面。因此,许多老师尽管希 望开展网络教学,但由于缺乏或根本没有网络教育教学的支撑平台和网络 教学资源,只能望“网”兴叹,形成资源的极大浪费。所以,建立适合学 校实际教学情况的网络教学平台就显得尤为重要和迫切。 就上海海事大学的实际情况来看,校园网和互联网已经接入多媒体教 室,硬件设施基本完备。但是就缺乏网络教学的支撑平台和网络教学资源, 老师上课还是沿用传统的教学方式,形成资源的极大浪费。同时我们也要 看到网络教育是传统教育的发展和补充,不能简单替代,而是要长期共存。 所以在相当长的时间内网络教育和传统教育的相互促进和融合是必然趋 势。所以如何充分发挥网络的教学功能,怎样利用现有技术,建成功能强 大、结构合理的网络教学体系,正是目前急需考虑和解决的重要问题。 基于目前我校网络教学发展的现状和要求,对网络教学平台系统方面 进行的研究,提出了建立基于n e t 的辅助教学平台的想法。辅助教学平台 不同于一般的远程教学平台,教师和学生完全分离开地教与学,仍是采用 面对面的教授方法,但可以辅助老师更方便地教,学生更好地学。但同时 2 基于,n e t 辅助教学平台的设计与实现 我们的辅助教学平台也吸收了一些远程教学该平台的先进思想。辅助教学 平台将全程跟踪教师的教学活动,从学期初的教学任务开始,到教学日历 的编写,到日常的备课,到上课讲义的编写,到课堂点名,到课堂作业, 最后至学期末的课程总结和成绩的管理,功能丰富、使用方便,而学生又 可从平台得到多方面的信息和资源,并可直接在平台上与老师做交流。总 之,辅助教学平台为教师和学生提供了强大而全面的授课、管理和交流工 具。 1 2 论文的组织 第章前言 介绍国内外教学平台的发展现状、教学平台的发展趋势,并介绍 了本论文的选题背景。 第二章辅助教学平台涉及的关键技术 介绍在n e t 环境下建立辅助教学平台涉及的关键技术,包括多层 体系结构,n e t 框架,x m l 和a s p n e t 等,另外还对于n e t 平 台和j 2 e e 平台进行了比较。 第三章n e t 环境下辅助教学平台的框架和总体设计 介绍辅助教学平台的系统目标,设计原则,体系结构,运行环境 以及功能模块,并着重介绍了辅助教学平台编程语言的选定。 第四章数据层设计实现以及数据访问技术 介绍数据库的设计原则,逻辑设计,物理设计,数据访问的程序 设计,a d o n e t 技术以及应用 第五章业务层的设计及实现 介绍微软组件技术,n e t 环境下的业务层,业务逻辑层的设计及 实现 第六章表示层的设计与实现 介绍系统配置及绑定技术,服务器端用户控件及设计,首页、用户 管理等的设计 第七章总结与展望 3 基于n e t 辅助教学平台的设计与实现 第二章研究中涉及的关键技术 2 。1 多层体系结构 2 1 1 多层体系结构 多层体系结构【s l 的特点是在传统的两层应用结构中的客户端与服务端之间插入 一层或几层中间件( 或者称为应用服务器) ,由中间件处理应用系统的业务逻辑、 与数据库通讯,客户端程序只处理界面的显示。 典型的四层b s 结构【s 1 如下图所示: 客户端表服务器端表 服务器端 商业逻辑 企业信息系 图2 - 1 四层b s 结构图 多层体系结构相对于两层体系结构,其优越性1 7 】主要体现在: 1 ) 把业务逻辑等封装在共享的中间层里。不同的客户端都访问相同的中间层。 这可以减少由于在每个单独的客户端应用中重复业务逻辑所造成的冗余以及相应的 维护成本。 2 ) 采用瘦客户端方式。客户端应用程序可以写的很小,而把大多数工作交给中 间层处理。客户端应用程序更加易于发布,比如通过i n t e m e t 来发布等,就不需考虑 安装、配置、维护数据库连接软件的问题。 3 ) 分布式数据处理。将一个应用系统的工作分布到几台机器上,由于可以提供 负载平衡,就可以改善系统性能, 4 ) 增强安全性。可以使用不同的访问约束,来分层隔离敏感的功能。这提供了 4 摹于n e t 辅助教学平台的设计与实现 一个灵活的、可配置的安全层。中间层可以通过接口方式等限制敏感部分的入口, 更加容易实现访问控制。 2 1 2 在a s p n e t 中实现多层模式 在a s p n e t 中利用代码隐藏技术实现页面代码与控制代码的分离【“。 页面代码对应于视图层,后台控制代码对应于控制层,其实现形式如表2 - 1 : 表2 - 1 a s p ,n e t 中的多层模式表 v i e w a s p x 文件 c o n t r o l l e ra s p x c s 文件 m o d e l数据库类、数据库处理类 在a s p n e t 中实现多层模式的优点i9 j 是: 1 、各层代码分离,降低了互相依赖,耦合度降低。 2 、各层代码独立,可重复被其他层使用,减少了代码重复。 3 、通过分离视图和模型等,具有不同技术优势的开发人员可以专注于 自己所擅长的部分,可以并行工作。 4 、分离代码,提高了代码优化的可能性。 5 、模型和视图分离,可以分别独立测试。 2 2 n e t 框架综述 m i c r o s o f t n e t 开发平台”是一个开发和运行软件的新环境,它使得基 于w i n d o w s 的客户端图形界面程序和基于i n t e r n e t 的w e b 应用程序的开 发更为容易。n e t 拥有丰富的运行库服务,来支持多种编程语言编写的组 件,具有跨语言和跨平台的互操作能力。它简化了在高度分布式i n t e r n e t 环境中的应用程序开发,为x m lw e b 服务和其他应用程序提供了一个高 效安全的开发环境,并且全面支持x m l 。 n e t 开发平台包括n e t 框架( f r a m e w o r k ) 和n e t 开发工具( 包括编 程语言和应用程序的集成开发环境) 等组成部分。其中n e tf r a m e w o r k 是 整个开发平台的基础,它主要包括公共语言运行库及类库。 n e t 框架的实现目标是: 5 基于n e t 辅助教学平台的设计与实现 1 )提供一个一致的、面向对象的编程环境,无论对象代码的存储和 执行是在本地还是远程; 2 )提供一个将软件部署和版本控制冲突最小化的代码执行环境; 3 )提供一个保证代码安全执行的代码执行环境; 4 ) 使开发人员的经验在面对类型不相同的应用程序时保持一致; 5 )按照工业标准生成所有通讯,以确保基于n e t 框架的代码可与 任何其他代码集成。 n e t 的核心思想是:把软件变成服务。在采用了x m l 作为核心技术 后,各种软件产品都将可能在网络上运行,这种模式称为w e b n e t 服务, 是新一代互联网的核心运行模式。 m i c r o s o f t n e tf r a m e w o r k 作为一个开发、部署和运行n e t 应用程序 的集成开发环境,它提供了大量构造n e t 应用程序时可用的核心功能。其 中,最关键的两个内核是:公共语言运行库( c o m m o nl a n g u a g er u n t i m e , c l r ) 和基础类库( b a s ec l a s sl i b r a r y ,b c l ) ,它们为n e t 平台的实现提 供了底层的技术支持。 2 2 1 公共语言运行库( c o m m o nl a n g u a g er u n t i m e ,c l r ) 从m i c r o s o f t n e t 开发框架的整体架构中可以看到,公共语言运行库( c l r 、i a l l 位于m i c r o s o f t n e t 架构的最底层,作为n e t 框架的执行引擎,它是多种语言的统 一运行环境,基于c l r 开发的代码称为托管代码( m a n a g e dc o d e ) 。 c l r 实际上是驻留在内存里的一段代理代码,负责n e t 应用程序在整个执行 期间的代码管理工作,并为其提供服务。c l r 为这些语言提供自动内存管理和资源 管理、异常处理、安全性、版本控制、组件通信等系统服务。 托管代码的运行步骤大体分为三步: ( 1 ) 使用c l r 支持的编程语言编写源代码。 ( 2 ) 由c l r 的编译器将源代码编译为独立于机器的微软中间语言( m i c r o s o f t i n t e r m e d i a t el a n g u a g e ,m s i l ) ,同时产生运行所需要的“元数据”( m e t a d a t a ) 。 ( 3 ) 代码运行时,由c l r 的即时编译器( j u s ti nt i m ec o m p i l e ,j i t c ) 将中间 语言生成机器代码,最后执行这些编译过的机器代码。 托管代码编译与执行的具体过程如图: 6 基于n e t 辅助教学平台的设计与实现 图2 - 2 托管代码编译与执行过程图 元数据( m e t a d a t a ) 被称为“数据的数据”,包含着数据及其运行时所需的资 源,它以汇编清单的形式存在,主要有三个部分组成: ( 1 ) 对部署单元组装的描述( 名字、版本、语言、输出类型等) : ( 2 ) 对类的描述( 基类、接口、成员等) : ( 3 ) 由编译器、框架或由用户定义的其他属性。 在j a v a 中,有一个核心概念:虚拟机( j v m ,j a v a v i r t u a lm a c h i n e ) ,j v m 是 仅含有指令集的一个通用的虚拟机器,它能够将中高级语言的程序编译为虚拟机的 机器语言程序,再通过虚拟机的即时编译器( j 1 t ,j u s ti nt i m ec o m p i l e ) ,将这些 机器码转换成可在本地执行的实体机器的机器码。m s i l 就相当于虚拟机的机器码, 它是一种与机器平台、操作系统都无关的虚拟机的语言。利用m s i l ,可以实现跨语 言的合作。 同时,由于m s i l 在沿用w i n d o w s 平台使用的p e ( p o r t a b l ee x e c u t a b l e ) 的基 础上对p e 作了扩充,把程序的m e t a d a t a 一并写入可执行文件中,使m s i l 程序具 有了自我解释能力,从而避免了d l l 的版本和更新问题( 常称为d l l h e l l ) ,大大 简化了应用程序的发布和升级。c l r 的核心是一个执行引擎,它加载、执行和管理 已经编译为m s i l 格式的代码,这种代码不被解释,在执行之前通过内置在c l r 中 的j i t 将它编译为本机二进制代码。v s n e t 充分发挥c l r 的潜力,为开发者提供 了一个统一的集成开发环境和调试器。 7 基于n e t 辅助教学平台的设计与实现 2 2 2 基础类库( b a s ec l a s sl i b r a r y ,b c l ) 在n e tf r a m e w o r k 中,b c l 位于c l r 之上。b c l i ”】是一套操作系统层级的对 象函数库,其中包含了托管代码运行所需的各种具有庞大功能集的软件组件,可供 程序语言调用使用。它为,n e t 应用程序提供了一个统一的、面向对象的、层次化、 可扩展的编程接口,为数据输入输出、安全性等提供了服务和对象模型。这种统一 的编程模式彻底解决了过去由于调用不同类库采用不同的约定而造成系统不稳定的 情况。 在基础类库之上,n e t 框架为我们提供了诸如数据访问、创建w e b 服务器应 用程序、创建w i n d o w s 客户端界面所需的其他功能强大的类库。 类库类似于w i n d o w sa p i 函数,但它不像w i n d o w sa p i 那样“随意堆砌”在动 态链接库( d l l ) 文件当中。n e t f r a m e w o r k 中的任何东西,比如a s p n e t 页面、 消息框等,都被视为对象。这些对象被放置在叫做命名空间( n a m e s p a c e ) 的逻辑分 组中,类似j a v a 中的包( p a c k a g e ) 。其好处是庞大的类库变得结构清晰,易于掌握和 使用。因此,在使用时,开发者只需在自己的应用中添加对所需的基础类库的引用, 就可以使用这个类库中所有的方法、属性等等。 n e tf r a m e w o r k 的命名空间布局图【1 列如下: 图2 - 3 n e tf r a m e w o r k 命名空间布局图 8 基于n e t 辅助教学平台的设计与实现 2 2 3 缓存机制 对于由数据库驱动的w e b 应用程序来说,要改进其性能,最好的方 法就是使用缓存。从数据库中检索数据可能是在w e b 站点上执行的最慢 的操作之一。如果能够将数据库中的数据缓存到内存中,就无需在请求每 个页面时都访问数据库,从而可以大大提高应用程序的性能。 a s p n e t 缓存方法【”】有3 种: 页面输出缓存( p a g eo u t p u tc a c h i n g ) :提供了对于请求的动态反 应,一般用来存放完整的浏览页。将频繁访问的网页,放入输出缓 冲区,可以大大降低系统处理的负担,提高工作效率。 页面部分缓存( p a g ef r a g m e n tc a c h i n g ) :将网页中复杂的、难以 生成的部分放入缓冲区,供不同的请求调用,而对网页中一定要动 态生成的部分单独处理。 页面数据缓存( p a g ed a t ac a c h i n g ) :在缓冲区中为应用程序保存 各种对象,这些对象可以根据h t t p 的请求被调用。具体是通过c a c h e 类的方法,将数据对象放入缓冲区中,再根据关键字匹配找到并加 以利用这些对象。主要有按优先级、按有效期、按关键字依赖3 种 缓存方式。 a s p n e t1 0 的缓存处理有一个缺点:数据过期的问题。a s p n e t1 0 可以将文件内容读入d a t a s e t 中,然后缓存d a t a s e t ,并在文件更改时自动 从缓存中删除d a t a s e t 。但是,无法使用数据库查询来初始化d a t a s e t , 也就无法缓存d a t a s e t 并在数据库更改时废弃d a t a s e t 。这样,系统可能 显示过期的、不准确的数据,影响业务流程。 在a s p n e t2 0f r a m e w o r k 中,提供了许多新的重要增强功能,可以在 应用程序中更轻松地使用缓存功能。 新增的d a t a s o u r c e 控件中包含的属性使得在内存中缓存数据库数 据交得非常容易。通过使用d a t a s o u r c e 控件,可以检索并缓存数 据库数据,而无需编写任何代码。 新增的s q lc a c h ei n v a l i d a t i o n 支持可以在基础数据库中的数据发 生更改时自动在缓存中重新加载数据库数据,通过在后台不断轮询 9 基于n e t 辅助教学平台的设计与实现 数据库来检查数据更改。此功能提供了缓存的所有性能优势,而不 用担心数据过期的问题。 使用新增的s u b s t i t u t i o n 控件,可以更轻松地在缓存的页面中混合动 态内容。s u b s t i t u t i o n 控件为在缓存的页面中插入动态内容提供了一个独立 的空间。 2 3 n e t 框架中的x m l x m l 代表e x t e n s i b l em a r k u pl a n g u a g e ( e x t e n s i b l em a r k u pl a n g u a g e 的缩写,意为可扩展的标记语言) 。x m l 是一套定义语义标记的规则 1 4 】,这 些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言, 即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的 句法语言。 它具有以下特点: 扩展性在x m l 中能建立任何需要的标记。只要清晰、易于理解,可 以建立任何数量的标记。 标识使用x m l ,可以识别文档中的元素。 标识是描述数据的类型或特性,而不是数据的内容。相比数据库,标 识就是一种字段名。x m l 的目的是标识文档中的元素。通过标识,x m l 文档才便于阅读和理解。但标识仅仅是用来识别信息,它本身并不传达信 息。 语言使用x m l ,要遵循特定的语法来标识你的文档。 作为一种语言x m l 必须遵循一定的规则。虽然x m l 的扩展性允许创 建新标识,但它仍然必须遵循特定的结构,语法和明确的定义。x m l 是 一种用来定义标识和描述信息的语言。 结构化x m l 促使文档结构化,所有的信息按某种关系排列。结构化 使文档看起来不会杂乱无章,每一部分都紧密联系,形成一个整体。结 构化有两个原则: 1 每一部分f 每一个元素1 都和其他元素有关联。关联的级数就形成了结 构。 2 标识本身的含义与它描述的信息相分离。 1 0 基于,n e t 辅助教学平台的设计与实现 元数据 1 5 l ( m e t a d a t a ) 在h t m l 中可以使用m e t a 标识来定义网页的关 键字,简介等,这些标识不会显示在网页中,但可以被搜索引擎搜索 到,并影响搜索结果的排列顺序。x m l 对这一原理进行了深化和扩展, 用x m l ,可以描述信息在哪里,可以通过r e c t a 来验证信息,执行搜索, 强制显示,或者处理其他的数据。下面是些x m l m e t a d a t a 在实际应 用中的用途: 1 可以验证数字签名,使在线商务的提交动作f s u b m i s s i o n ) 有效。 2 可以被方便的建立索引和进行更有效搜索。 3 可以在不同语言之阃传输数据。 显示 1 6 1 单独用x m l 不能显示页面,使用格式化技术,比如c s s 或者x s l ,才能显示x m l 标记创建的文档。x m l 是将数据和格式分 离的。x m l 文档本身不知道如何来显示,必须有辅助文件来帮助实现。 x m l 中用来设定显示风格样式的文件类型有: x s l 一x s l 全称是e x t e n s i b l es t y l e s h e e tl a n g u a g e ( 可扩展样式语 言1 ,是设计x m l 文档显示样式的主要文件类型。它本身也是基 于x m l 语言的。使用x s l ,你可以灵活的设置文档显示样式,文 档将自动适应任何浏览器和p d a ( 掌上电脑) 。x s l 也可以将x m l 转化为h t m l 。 一c s s ( c a s c a d i n gs t y l es h e e t s ) 层叠样式表,是目前可以用来 在浏览器上显示x m l 文档。 d o md o c u m e n to b j e c tm o d e l ( 文档对象模型【”1 ) ,假设把文档看成一个 单独的对象,d o m 就是如何用h t m l 或者x m l 对这个对象进行操作 和控制的标准。在x m l 中,就是要将网页也作为一个对象来操作和控 制,我们可以建立自己的对象和模板。与对象进行交流,如何命令对 象,就要用到a p i 。a p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ) 是访问和操 作对象的规则。而d o m 就是一种详细描述h t m l x m l 文档对象规则 的a p i 。它规定了h t m l x m l 文档对象的命名协定,程序模型,沟通 规则等。在x m l 文档中,我们可以将每一个标识元素看作一个对象 它有自己的名称和属性。x m l 创建了标识,而d o m 的作用就是告诉 s c r i p t 如何在浏览器窗口中操作和显示这些标识。 基于n e t 辅助教学平台的设计与实现 2 4 a s p n e t 技术 2 4 1a s p n e t 概述 a s p n e t l l 8 】是m i c r o s o f t n e t 框架的重要组成部分,它不仅仅是对传统的服务 器处理技术a s p ( a c t i v es e r v e rp a g e s ) 的继承和发展,而且加入n e t 提供 的高级特性,几乎克服了传统a s p 的所有缺点,所提供的性能远远超出传统的 w e b 开发模式,为b s 结构的应用的开发带来了巨大的便利。 a s p n e t 完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方 面更是引入了许多激动人心的新技术,增加了w e b 开发的灵活性、有效性,缩短了 开发周期。 a s p n e t 从解释型的编程框架飞跃到编译型的编程框架,采用了客户 端处理技术仿真事件驱动模型,使得建造、运行、发布网络应用程序像开发传 统w i n d o w s 应用程序一样容易而且强大。各种w e b 控件,对数据绑定的 支持,大大节省了开发的代码量,节约了开发时间。代码和h t m l 页面的 分离以及对面向对象开发的完全支持,统一了开发编程模式,增强了应用 的功能,有利于开发人员间的分工协作。v i s u a ls t u d i o n e ti d e 提供的编 码和调试环境方便了开发工作,提高了开发效率。 2 4 2a s p n e t 的重要特色 1 增强的编译功能【1 9 】 a s p n e t 是在服务器上运行的编译好的公共语言运行库代码。与被解释的传统 的a s p 不同,a s p n e t 可利用提前绑定、即时编译、本机优化和外部缓存服务, 这相当于在编写代码之前便提高了性能。 2 可视化的开发工具支持 a s p n e t 框架补充了大量箱和设计器。这一强大的工具提供了所见即所得的编 辑方式、拖放服务器控件以及自动部署等,而这些只是这个强大工具所提供功能中 的少数几种。 3 威力和灵活性 因为a s p n e t 基于公共语言运行库,所以w e b 应用软件开发者可以利用整个 平台的威力和灵活性。n e t 框架的类库、消息处理、数据访问解决方案等都可从 w e b 无缝访问。a s p n e 也与语言无关,所以可以选择一种最适合程序的语言,如 c 撑、v b n e t 或其他支持n e t 框架的语言,或者跨多种语言来分割应用程序。另外, 基于n e t 辅助教学平台的设计与实现 公共语言运行库的交互性保证在迁移到a s p n e t 时保留基于c o m 的开发中的现有 投资。 4 简易性 从简单的窗体提交和客户端身份验证到部署和站点配置,a s p n e t 使执行常见 任务变的容易。另外,公共语言运行库利用托管代码服务( 如自动引用计数和垃圾 回收) 简化了开发。 5 管理性 a s p n e t 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 w e b 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工 具帮助的情况下应用新设置。这种“零本地管理”也扩展到了a s p n e t 框架应用程 序的部署。只要将必要的文件复制到服务器,即可将a s p n e t 框架应用程序部署到 服务器,不需重新启动服务器,即使是在部署或替换运行的编译代码时。 6 缩放性和可用性 a s p n e t 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环 境中提高性能的功能。另外,进程受到a s p n e t 运行库的密切监视和管理,以便当 进程行为不正常( 泄露、死锁) 时,可就地创建新进程,以帮助保持应用程序始终 可用于处理请求。 7 自定义性和扩展性 a s p n e t 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入” 代码。实际上,可以用自己编写的自定义组件扩展或替换a s p n e t 运行库的任何自 组件。 8 安全性 借助内置的w i n d o w s 身份验证和基于每个应用程序的配置,可以保证应用程序 是安全的。 2 4 3a s p n e tw e b 窗体 w e b 窗体【2 0 1 用于生成功能强大的基于窗体的w e b 页。生成这些页时,可以使 用a s p n e t 服务器控件来创建公共u i 元素,以及对他们进行编程以用于执行常见 的任务。这些控件使用户能够用可重复使用的内置或自定义组件生成w e b 窗体,从 而简化页面的代码,方便网络应用的开发。 在现在的a s p 开发中,内容和脚本交错,维护和升级很困难,a s p n e t 将代 1 3 基于n e t 辅助教学平台的设计与实现 码和内容分开,使得开发人员和设计人员能够更好的分工合作,提高开发效率; a s p n e t 通过引入服务器端控件,将类似v b 的快速开发应用到了网络开发中来, 提高了构建w c b 窗体效率,并且服务器端控件是可扩展的,开发者可以建造自己需 要的服务器端控件。 2 4 4a sp n e tw e b 服务 a s p n e t 网络服务【2 1 l 体系架构为用a s p n e t 建立网络服务提供了高级可编程 模板。虽然建立网络服务并不需要使用网络服务平台,但是它提供许多的优点将简 化开发过程。使用这个可编程模板,开发人员不需要理解h t r p 、s o a p 或其他任何 网络服务规范。 开发人员用a s p n e t 生成一个扩展名为a s m x 的文件,并把此文件配置为网络 应用程序的一部分,就建立起一个网络服务。a s m x 文件或者包含对在其他地方定 义的受控类的引用,或者包含这个类的定义。这个类是由a s p n e t 提供的w e b s e r v i c e 类所派生。公共的类方法在标记上w e b m e t h o d 属性后,就会成为网络服务 方法,把h t i t 请求发送到a s m x 文件中的u r l 后,这些方法就会被调用。开发 人员不必手工为其网络服务建立一个契约。当被调用者请求时,a s p n e t 检查类的 元数据,以自动生成s c l 文件。 客户可通过s o a p 、h t y pg e t 和h i t pp o s t 提交请求。对方法和参数进行 编码的约定是:对h t i x ag e t ,将被编码为查询字符串;对h t r pp o s t ,将被编码 为表单数据。h t r pg e t 和h r 什p o s t 的机制不如s o a p 有力,但是他们使得客 户在访问网络服务时不必支持s o a p 。 2 4 5a s p n e t 应用框架 a s p n e t 应用不再是解释脚本,而是编译运行,再加上灵活的缓冲技术,从根 本上提高了性能:由于a s p n e t 的应用框架基于公共语言运行库,发布一个网络应 用,仅仅是一个拷贝文件的过程,即使是组件的发布也是如此,更新和删除网络应 用,可以直接替换删除文件;开发者可以将应用的配置信息存放x m l 格式的文件 中,管理员和开发者对应用程序的管理可以分开进行;提供了更多样的认证和安全 管理;在可靠性等多方面都有很大提高。 2 4 6 运用a s p n e t 技术操作数据 在a s p n e t 的结构中,i i s 为w i n d o w s 操作系统的个组件,所有w e b 客户 端和a s p n e t 应用程序之间的联系都必须通过i i s 来进行。a s p n e t 应用程序是建 1 4 基于n e t 辅助教学平台的设计与实现 立在n e t 框架技术的基础上的,因此在这些应用程序中可以充分利用由n e t 框架 技术提供的各种特性( 例如w e b 表单和w e b 服务) ,通过对这些特性的利用,体 现n e t 框架技术对r a d 和o o p 技术的支持,实现减少编程工作量和快速开发的目 标。 1w e b 客户端 la s p n e t 应用 。 t 4i i i s l 。 l。n e t 框架 i , iw i n d 。w s 操作系统 图2 4a s p n e t 结构图 2 5 n e t 平台与j 2 e e 平台的比较 教学平台需要一个稳定的、高效能的开发和应用平台,需要集成的开 发环境和相对较低的成本投入。j 2 e e 和n e t 两种平台都是经过市场上众 多企业实践检验成熟、高效的平台,二者对于x m l 、w e bs e r v i c e 等的支 持也相差不多,但是还是有很多区别【2 2 】: 1 、开发环境:n e t 有强大的程序开发工具v i s u a ls t u d i o n e t ,j a v a 也有b o r l a n d 、s u n 、b e a 、i b m 等厂商的各种整合式开发工具可以选择使 用。相比较而言,v s n e t 的集成开发环境更易于实现快速高效的开发。 2 、系统设计及开发过程:均采用面向对象开发技术,在系统架构设计 上,都采用o o a d 、u m l 、d e s i g np a t t e r n 等方式。但是基于个人的基础, 学习j 2 e e 的时间要长一些。 3 、开发语言:j 2 e e 只支持j a v a 语言,而n e t 最主要支持的语言是 基于n e t 辅助教学平台的设计与实现 c 样,但是也支持c + + 、v b 、p e a r 、c o b o l 等多种语言;c 舟支持j i t ( j u s t i n t i m e ) 编译方式,而j a v a 则基于解释方式。另一方面,c 撑正在 成为一种工业标准,已经被e c m a ( 欧洲计算机制造商协会) 所接纳。 4 、支持标准:j 2 e e 支持j a v a 、e j b ,而n e t 支持x m l s o a p 。从标 准的开放性上,x m l s o a p 要好于前者。x m l 正在成为i n t e r n e t 上内容表 示的标准,代表了下一代网络上互操作的光明前景,s o a p 协议本身也能 够保证其他平台上的组件能够与n e t 平台上的组件进行信息的交换;而 j a v a e j b 模式仍然没有实质上的技术进步,并不能完全实现其标榜的统一 计算平台。 5 、代码通用性:在n e t 上开发可以实现真正的代码重用,因为设 计n e t 平台的一个重要思想是:运行时环境和具体的语言分开。所有的资 源管理、内存分配、变量类型等均由运行时环境处理。这样的话,用c 舟 写的类就可以直接用在c c + + 程序中。可以利用过去程序资源。而在j 2 e e 平台上,j a v a 将运行时环境和具体语言混在一起。 目前n e t 平台的稳定性、服务器的稳定性也表现很好,并且n e t 技 术还在不断改进之中。鉴于m i c r o s o f t 具备雄厚的技术实力,借鉴、吸收其 他优秀技术养分的能力,我们相信n e t 平台会很好地满足需求。 另外,我们还可以利用一套的n e t 平台下代码自动生成器,自动生成 简单代码,来加快开发进度,可以在较短的时间里开发出一个扩充性好的 稳定的系统。 因此系统决定选择n e t 平台作为辅助教学平台的基础平台。 2 6 本章小结 本章着重介绍了基于n e t 框架的辅助教学平台的开发所涉及的技术, 包括多层体系结构,n e t 框架综述,x m l 技术和a s p n e t 技术等,并且 通过比较n e t 平台和j 2 e e 平台确定n e t 平台作为辅助教学平台的基础平 台来进行开发。 1 6 基于n e t 辅助教学平台的设计与实现 第三章n e t 环境下辅助教学平台的框架和总体设计 辅助教学平台的设计既要符合教育教学规律,做到科学合理又要符合 计算机、网络等现代信息处理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届重庆市南岸区南开(融侨)中学九年级化学第一学期期中学业质量监测模拟试题含解析
- 2026届吉林省前郭尔罗斯蒙古族自治县英语九上期末教学质量检测模拟试题含解析
- 广东省佛山市南海中学2026届九年级化学第一学期期中联考试题含解析
- 2026届南通市崇川区启秀中学化学九年级第一学期期中统考试题含解析
- 河北省保定市涞水县2026届英语九年级第一学期期末调研试题含解析
- 四川省乐山市市中区2024-2025学年七年级下学期期末道德与法治试题(含解析)
- 2026届重庆市江北新区联盟化学九上期末监测试题含解析
- 湖南省长沙市望城县2026届英语九年级第一学期期末复习检测试题含解析
- 2026届咸宁市重点中学化学九上期中达标检测模拟试题含解析
- 2026届贵州省兴仁市第九中学九年级化学第一学期期中综合测试模拟试题含解析
- 2024年贵州水城能投发电有限公司招聘笔试冲刺题(带答案解析)
- 中国古代的声学成就
- 第1课 社会主义在中国的确立与探索(课件)-【中职专用】高一思想政治《中国特色社会主义》(高教版2023·基础模块)
- 二年级奥数(从课本到奥数-第一学期B版)
- 北美所有护理诊断
- 吊篮施工验收标准及规范
- 银行养生沙龙策划方案
- 小学生主题班会通用版《军章闪耀》 课件
- 软件系统权限申请表
- 自主实习申请表
- 长途用车申请表
评论
0/150
提交评论