(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf_第1页
(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf_第2页
(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf_第3页
(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf_第4页
(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(教育技术学专业论文)基于aspnet的在线考试系统的设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 传统的考试方法由于涉及到组织命题,试卷印刷,考场安排,监考,人 = 判卷等诸 多环节,所以周期长,效率低下,而且学生舞弊,人工判卷等主观原因,电会影响到考 试的公1 f 十牛。网络技术的发展和i n t e r n e t 的迅速普及,极人地推动了在线考试系统的 发展。 目前大多数在线考试系统或多或少存在可扩展性差、安全性差、组卷方法币一等种 种缺陷,因而难以大规模应用于正式的考试中,针剥这种情况,本文介绍了 种基于 a s p n e t 的在线考试系统的设计与实现。 论文介绍了在线考试系统的相关理论及技术背景,针对系统的功能特点,使用_ a s p n e t 技术,采用了面向对象的开发方法和流行的三层体系结构,对题库设计理论和 组卷算法进行了探讨,并详细说明了系统设计与实现的过程。 本文没计的在线考试系统具有通用性、良好的可扩展性和安全性、并易于维护等优 点,能满足目前的在线考试需求。 关键词:考试系统;a s p n e t ;面向对象;组卷 a b s t r a c t t h et m d i t i o n a lm e t h o do fe x a mi si n e f f i c i e n tf o ri o t so f 白c t o r s i n c l u d i n gf o r m u l a t i n g q u e s t i o n sf o re x a m s ,p r i n t i n gp a p e r ,a r r a n g i n gp l a c e s ,m o n i t o r i n g ,m a n u a lg r a d i n ga n ds oo n f u r t h e r m o r e ,s u b j e c t i v ef a c t o r sj u s tl i k es t u d e n t s f r a u d u l e n c e ,m a n u a lg r a d i n gw i l la f f e c tt h e j u s t i c eo ft h ee x a m a st h ed e v e l o p m e n to fw e l lt e c h n o l o g i e sa n dr a p i dp o p u l a r i z a t i o no f i n t e m e t ,t h eo n l i n ee x a ms y s t e mh a sb e e ni m p r o v e dt o om u c h a tt h ed i m e n s i o n so fe x p a n s i o n ,s a f e t ) ;t m i t a r yo r g a n i z a t i o n a lm e t h o d t h e r ea r es o m e k i n d so ff a u l t se x i s t i n gi nt h em o s to fc u r r e n to n l i n ee x a n ls y s t e m s a n ds o i t sd i 伍c u l tt ob e a p p l i e di nt h ef o f l t l a le x a n a so nal a r g es c a l e i na c c o r d a n c ew i t ht h i ss i t u a t i o n t h ea r t i c l e i n t r o d u c e sak i n do f d e s i g na n dr e a l i z a t i o no f t h eo n l i n ee x a ms y s t e mb a s e do na s p n e t t 1 1 i st h e s i si n t r o d u c e ss o m er e l a t i v et h e o r i e sa n dt e c h n o l o g i c a lb a c k g r o u n do fo n l i n e e x a ms y s t e m s a i m i n ga tt h ec h a r a c t e r i s t i c so ff u n c t i o n s ,t h es y s t e mm a k e su s eo fa s r n e t a n da d o p t so b j e c t o r i e n t e dm e t h o d so fb u i l d i n ga n dt h ep o p u l a rt h r e el a y e r so fs y s t e m i c s t r u c t u r e i ta l s op r o b e si n t ot h et h e o r yo fd e s i g n i n gs u b j e c t sa n ds h o w st h ed e t a i l e d d e s c r i p t i o no nh o wt od e s i g na n dr e a l i z et h es y s t e m , t h es y s t e mh a sa l l p u r p o s eu s e ,g o o de x p a n s i o n ,s a f e t ya n dm a i n t a i n a b i l i t ya n do t h e r m e r i t s a n di tc a nm e e tt h en e e d so fc u r r e n to n l i n ee x a m s k e yw o r d s :e x a ms y s t e m ;a s r n e t ;o b j e c t o r i e n t e d ;o r g a n i z i n gt e s tp a p e r i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取 得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中 不包含其他人已经发表或撰写过的研究成果,也不包含为获得东北师范大学 或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研 究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名:基量 日期:至苎丑:s ! 当 学位论文版权使用授权书 本学位论文作者完全了解东北师范大学有关保留、使用学位论文的规 定,即:东北师范大学有权保留并向国家有关部门或机构送交学位论文的复 印件和磁盘,允许论文被查阅和借阅。本人授权东北师范大学可以将学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其它 复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:垄圣指导教师签名: e t 期:兰亟:耋:驾e t 期: 学位论文作者毕业后去向: 工作单位: 通讯地址: 电话: 邮编: 鞋 第一章绪论 1 1 课题研究的背景 现代社会信息爆炸,知识更新日益加快,旧的知识传播途径已经满足不了人们的需 求,这就迫切需要一种全新的知识传播方式。计算机技术、网络通信技术和多媒体技术 的飞速发展,特别是i n t e m e t 在全球得到迅速发展和广泛普及,为人们提供了一个巨大 的信息资源共享空间。人们越来越依靠计算机网络作为彼此合作、交流的主要渠道。信 息化社会对教育提出了新的要求,教育的终身化、全球化和高效化使基于i n t e r n e t 的多 媒体远程教学成为现代教育技术的一个重要研究领域。“信息高速公路”的建立将对学 校的教育观念、教学内容、教学方法乃至整个教育结构产生重大而深刻的影响。 国家在政策上对网络教育给予支持,教育部于1 9 9 9 年启动新世纪网络课程建设工 程,用面向2 1 世纪教育振兴行动计划【1 】中现代远程教育资源建设项目的经费,重点 支持若干所高等学校网络教育学院的网络课程建设和应用,并实现资源共享。新世纪网 络课程建设工程在两年内重点规划建设2 0 0 1 左右基础性的网络课程;在研究方面,教 育部门召开启动新世纪网络课程建设工程研讨会,提出了现代远程教育资源建设技术 规范( 试行稿) ,为课程的开发提供了方向。 作为衡量教学效果的考试,其形式与内容也发生了巨大的变化【2 】,于是基于i n t e m e t 的在线考试系统应运而生。 随着网络的普及和对教育的日趋重视,一些新兴的教学手段如远程教育、网上大学 在国内越来越普及,许多的培训单位、大中专院校也建设了校园网,在这种情况下,各 学科的网上考试就具有了必要的环境。 基于i n t e r n e t 的网上考试系统,突破了传统考试的诸多限制,可通过计算机网络实 现考题资源共享,计算机考试系统采用随机抽题组卷的方式,试题抽取范围相对较大, 并可同时生成多套试卷,从而使试卷整体覆盖面变大,可较全面的考察考生的实际水平, 保证了考试的客观准确性;另外,计算机考试系统的客观题可自动评分,无任何人为因 素,不仅能够使教师摆脱繁重的阅卷负担,提高阅卷速度,而且可以避免人为误差及人 情分等问题,保证了考试的公平公正,因而,计算机考试系统具有保密程度高、客观性 强、评分迅速、公正,便于组织大规模异地实时考试等优势。使用在线考试系统,还可 以更有效地实现考试结果的分析。教师进行考试的主要目的,是为了从中发现问题,从 而改进教学方法,达到教学目标,以往由于时间和条件的限制,教师只能从有限的几个 方面来分析考试,如根据最高分、最低分、平均分了解班级的整体水平,凭自己的印象 寻找错误率较高的题目等,在线考试系统则可以发挥计算机速度优势,考虑各种因素和 关联规则,充分挖掘考试结果,得到内容更详细和层次更高的分析结果,以便利用这些 分析结果来改善教学方法,提高教学质量。 1 2 国内外研究现状 1 2 1 计算机考试的研究现状 考试使用计算机的尝试是从计算机类考试开始的,从九十年代开始,我国的多项全 国性计算机考试开始使用计算机进行测试。1 9 9 1 年开始的计算机软件专业技术水平考 试;1 9 9 4 年起开始的由国家教委考试中心主办、教育部批准的非计算机专业全国计算机 等级考试等。这些使用计算机的考试旨在普及计算机应用知识和使用能力,在社会上有 广泛影响,虽然它们适用的系统经历了几次升级,考试的内容也随着计算机软硬件的发 展不断更新变化,但基本的考试形式一直延用至今。另外,人事系统为评定职称开辟的 计算机应用水平考试,财务系统推出的会计电算化考试等都是在计算机上进行的。使用 计算机进行考试是教育评价的一次飞跃,在考试中计算机取代了纸和笔,引发了考试内 容、方法和形式的深刻变革。 1 2 2 计算机阅卷技术的发展 计算机应用于考试,使得阅卷有可能由计算机自动完成,于是,自动阅卷技术成为 研究的重点。在计算机上最容易实现的是选择题判断题等客观题的测试和评阅,可以自 动实现立即评阅,立即给出测试结果。这种考试形式不一定局限在计算机类的考试,可 以扩展到任何门类。另外,这种方式也很容易推广到i n t e m e t 上。 在计算机类考试中的大量操作题,实现自动评阅就不是很容易了,但还可以实现。 基本上有两种方式,一种方式是使用真实的软件环境,另一种方式是使用虚拟的或仿真 的软件环境。使用真实的软件环境,一般是让考生在要测试的软件环境中按题目要求操 作,生成规定的文档,自动评阅的方法主要是在结果文档中提取评阅信息;使用虚拟或 仿真的软件环境,往往倾向于捕获被测试者的操作,或是将捕获外部事件和提取结果中 的评阅信息二者结合起来进行综合评价。因此,信息提取和事件捕获是自动化评阅的核 心和关键。 实现操作题自动评阅的最大的问题就是要针对每一道测试题编制一段评阅程序,工 作量大、成本高。这些方法多数是针对文档类的测试使用的,对于其他科目其它类的主 观性的测试实施的难度就更大了。 1 2 3 网络考试的研究现状 网络考试是考试技术的又一次飞跃随着网络技术、多媒体技术、网络数据库技术和 人工智能技术的发展,将互联网作为一个大考场进行网络上的考试己成为可能。在学校 进行的传统考试方式或者利用单机进行的考试也许会长期存在,但配合终身教育的社会 认证性的考试是一定会走向互联网的。不容置疑,对于终身教育来说,在互联网上的远 程教育方式是最有前途的,是大势所趋。在学习社会,考试是一种服务,只有网络才能 使社会上的每个成员随时享受到这个时代最先进的服务。用户只要通过浏览器连接到网 络上,便可方便地参加测试、提交试题,得到学习指导。 目前基于网络的考试面向的主要是社会上的培训认证考试( 如微软的各种认证考试) 和远程教育的考试。一个成功的基于w e b 的考试,需要一个好的网络环境,一个好的 考试平台和一个好的题库,但一个真正的智能化的基于w e b 的考试系统的实现是一个 2 复杂的过程,考试平台和题库的研究要依靠软件开发专家、被测学科专家和精通考试理 论和命题的专家三者的合作,因而对于有极大市场的社会认证考试,必然会走上专业化 的道路。 1 2 4 网上考试系统的几种类型 按照目前的情况,针对网络考试的组织状况将其分为三种类型】: 完全开放型:这种类型适合自我认定性质的考试,用于对所学知识进行检验的自我 考核。它完全可以在互联网上公开进行,可在任何网络环境中进行,不需要监考,任何 时间、地点随时考试,往往考试结果立即可知,非常方便,一般是不收取费用的。如网 上公开的一些小型知识问答。 半开放型:这种类型适用于社会上认证性质的考试。它需要被试者个人申请,并按 要求在指定的考点上网参加考试。这些考点是由所认定的考试机构专门开设的,有专人 监考,一般是随机服务方式,随到随考,考完立即知晓成绩,一般是要收取一定考试费 用的。如微软的各种认证考试。 组织型:这种类型适用于单位、学校及社会认证性质的考试。通过集体申请,在认 定的考试机构专门开设的大型考点上网参加考试,也有专人监考,要定时定点,收不收 费用由机构自定。如学校机房针对在校学生的网上考试。 以上这三种类型的网络考试都仅仅需要浏览器就可以了,无须安装考试系统和题 库,所有信息和考试结果都在服务器上,彻底改变了在单机上安装考试系统,考试结果 存于软盘中提交的方式。所以比不联网的上机考试在技术上和效率上又进了一步。 1 2 5 基于w e b 的远程考试的一些进展情况 ( 1 ) 北京师范大学现代教育技术研究所的何克抗、余胜泉研究开发成功基于w e b 的通用题库系统。它具备传统单机考试系统不具备的一些特点:集中管理,共享使用。 为了保持题库的高质量,题库由统一的权威机构来进行维护和管理;开放使用,广泛征 集试题和测试样本。用户只要通过浏览器连接上网络,便可以使用题库包括提交试题, 参加测试等。该系统提供远程考试组卷、远程考试、阅卷、统计与分析以及题库管理的 功能。 ( 2 ) 全美测评软件系统( 北京) 有限公司( a m e r i c a nt e s t i n ga u t h o r i t yh l c 。简称a t a ) 是一家提供考试技术服务和考试内容服务的专业公司,为全社会提供多种内容的考试和 培i ) t lj 艮务,开创了一个以考试为核心的新行业。a t a 开发成功的e t e s t i n g 智能控制网 络化全程自动考试系统是一个由远程网络化考试管理、数字化电子题库、智能化考务管 理和智能化考试结果评判等多种技术构成的先进的考试技术平台。该系统采用真实的环 境操作模拟技术,突破了传统考试技术的限制,不仅可以测试传统的理论题,而且可以 对各种应用操作技能进行测试,在全国率先实现了无纸无盘化考试、智能化网络远程控 制与管理。该系统全程自动跟踪记录操作者的每一个操作步骤,实时地进行过程评判和 结构评判,并根据需要对考生作出准确量化地评价,整个评判过程无人为干预,确保考 试的科学、客观、统一和公正。该系统的整个考试过程均由中心服务器自动控制,并能 由人工远程监控,还能实现随时报名、即时组织考试,真正脱离了考试盘和考卷,步入 3 世界人才测评先进行列。这套系统目前已应用到教育部考试中心的n i t 考试、人事部的 职称考试和劳动部的高新技术考试中心,取得了明显的效果。e - t e s t i n g 系统本身集成了 信息技术、网络技术及计算机技术,运用科学的管理方法和先进的教育理念和教学方式, 合理地组织和管理培训课程及人员,为学生提供个性化、智能化、充分交互的专业培训。 e - t r a i n i n g 系统由于采用了动态模拟技术( d & t ) 和智能判定技术( i a s ) ,使它具有极强的 真实性、互动性和实时性。该系统可以模拟全真环境,允许老师或学生的参与操作,相 当于提供了一个智能化的网络虚拟教室。 ( 3 ) j j l 拿大字源集团独资的北京奥兹教育网络系统有限公司( o z t i m e 奥兹时代) 是全 球e 1 e a r n i n g 行业内领先的教育培训服务与现代远程教育解决方案提供商。该公司采用 培训考评一体化发展方向,拥有一个优秀的综合应用平台一紫晶远程教育平台,采用适 应市场的商业模式一可接受、标准化、可复制,能够使得合作伙伴有信心和积极性,技 术上完全实现了网络化、多媒体化和实时交互化。不仅为用户提供一系列丰富的面向职 业成长的培训教程。还与国际证书和国内权威机构合作对学员进行考评。目前奥兹时代 已与中央电大、清华大学继续教育学院等机构建立了合作关系。 ( 4 ) 美国p r o m e t r i c 有限公司是全球最大的计算机化认证考试服务公司,总部位 于美国马里兰州巴尔地摩市。它是计算机化评估和认证的全球领袖,开创了计算机化考 试技术和管理标准,在世界的6 大洲1 4 1 个国家建立认证考试网络,可用2 5 种不同语 言提供2 4 0 0 多种考试,提供六十多家世界知名i t 公司的认证考试,如m i c r o s o f t 、o r a c l e 、 c i s c o 、s u n 、h p 、m m 、l o t u s 等等。p r o m e t r i c 提供的远程考试方案是一个可以任意时 间、任意地点举办的,在代理环境( p r o c t o r e d ) 下的安全在线考试。它提供了单项、填空、 简答等多种可选择的题型。只要能够访问i n t e r a c t ,就可以马上创建一个在线考试,并 且让学生立刻开始考试。 通过以上在线考试系统发展现状的介绍,可以看出虽然目前的远程考试已取得了较 大发展,但是系统在很多方面还不是很完善,使得远程考试在短时间内难以完全取代传 统的正式考试。现有的远程考试主要存在以下的不足:可扩展性差、安全性和可维护性 差,大多数是基于标准化考试的,难以满足复杂组卷条件的要求,当组卷条件过多时, 组卷速度慢,组卷成功率低等。这些缺陷使得目前的在线考试系统难以大规模应用于正 式的考试中。 1 3 本论文研究的主要内容 本文使用a sp n e t 技术实现一个在线考试系统,整个系统将被设计成具有易修改 和扩展的特性通用考试系统,即可以通过对题库和系统简单的修改就可以实现不同的科 目考试。系统还提供了统计分析模块可以对考试中多种信息进行统计和分析。由于时间 关系,目前系统只针对计算机基础这一门课程作了实现。 论文分为五个部分,第一章介绍了网络考试系统发展的现状;第二章介绍了考试系 统的相关理论和系统开发中涉及的一些开发技术和手段;第三章讨论系统的题库和系统 组卷算法;第四章介绍了考试系统的设计与实现;第五章对论文进行了总结和展望。 4 第二章在线考试系统理论分析与模型设计 2 1 考试系统相关理论 2 1 1 考试理论的发展 最早的教育考评在我国的西周时期就开始了,而经历了一千多年历史的科举制度, 到公元1 9 0 5 年才废除。它完全是一种主观形式的考试,尽管早已成为历史陈迹,而且 包含了许多糟粕,但其经验和教训,对研究考试制度及进一步完善考试的实践,都不无 借鉴意义。如让考生提出他们各自关心的问题并表达他们自己的意见,这种考试评价更 有助于评价考生的创造性和能力。 随着科技的进步,在教育评价的理论、方法和内容不断发展的同时,评价技术和手 段也在不断发展。读卡机的出现极大地提高了客观测试的效率和准确性。计算机的发展 更开辟了教育评价的新天地,从计算机单机实现测试以及在局域网上实现计算机考试, 到基于i n t e r n c t 的网上测评系统的研究和探讨,乃至到掌握高科技手段的专业测评公司 的出现,可以断定教育评测的国际化、认证化已成为趋势。教育评价的思路由重视评价 的客观性,开始向着重视能力和创造性发展,但随着测量技术向着以计算机为主的信息 技术的靠拢,受到技术条件的限制,教育测试又开始重蹈客观化的路线。这虽然应该看 作是正常的;但不应该是最终的方向。随着科学的发展,一定能研制出更全面的教育评 价技术和手段,实现既能体现客观性和高效性,又能有利于对能力和创造性进行评价的 目的。 2 1 2 考试系统的设计原则 通过对现有一些在线考试系统的研究,并详细了解了构建在线考试系统的一些要求 后,在线考试系统应该满足以下设计目标或要求: ( 1 ) 系统要有广泛的通用性,可以用于各类课程的远程考试。 ( 2 ) 能够满足复杂组卷条件的要求,组卷速度快,成功率高。 ( 3 ) 良好的安全性。要保证考试系统信息传输的安全性,防止考题泄漏,以及客户端 和服务器端的安全性等。安全性是通过为信息的机密性、保密性、完整性和可靠性提供 充分的保护来预防风险。保障系统安全,是任何系统的基本要素。 ( 4 ) 具有完善的在线考试功能。例如,要有完善的考试现场恢复机制,考试过程中如 果考试机发生故障,重新登录系统后,应能恢复考试现场,包括已经生成的试卷、考生 已经做过的题目的答案、考试剩余时间等。考试结束后,考试系统应能对客观题自动评 分,将主观题的答案存入数据库,待教师评阅后,考试系统再对主客观题分数汇总,给 出总成绩。系统还应能对考试结果进行统计分析。 ( 5 ) 良好的可扩展性。系统需要有良好的可扩展性,以满足考试系统不断发展的需要。 可扩展性是指系统能保证可持续增长以满足用户需求和业务复杂性要求,w e b 系统为 动态变化的模型;它们通常一开始很小,但随着需求的增长而呈指数级增长。这种增长 非常迅速,不仅表现在支持的用户的数量上,而且表现在提供的用户服务的复杂性和集 成性方面。对于考试系统而言,这种扩展性就显得尤为重要,因为考试系统的功能完善 是一个渐进的过程,目前开发的这个系统需要随着考生的要求和技术的发展而需要不断 改进,所以可扩展性是非常重要的。这就要求开发者使用正确的开发方法和手段,保证 系统是可以扩展并容易修改的。 ( 6 ) 可管理性和可维护性。可管理性是指可以很方便地对系统进行管理,确保系统的 正常运作。管理和运作涉及以下几个因素:维护系统服务及其服务正常所需的基础结构, 工具以及管理员和技术人员。 ( 7 ) 可靠性和可用性。系统需要在一定的负荷下保持运行的可靠性和可用性。服务质 量的一个重要方面是能够在期望的响应时间内访问信息。对需要通过网络的应用程序或 信息的单位用户来说,还意味着必须在用户期望的时间内为用户提供其需要的信息。 2 2 n e t 框架概述 微软开发的n e tf r a m e w o r k 是一种新的计算平台,它简化了在高度分布式i n t e r n e t 环境中的应用程序开发。n e t f r a m e w o r k 旨在实现下列目标:提供一个一致的面向对 象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在i n t e m e t 上 分布,或者是在远程执行的。提供一个将软件部署和版本控制冲突最小化的代码执行 环境。提供一个保证代码( 包括由未知的或不完全受信任的第三方创建的代码) 安全 执行的代码执行环境。提供一个可消除脚本环境或解释环境的性能问题的代码执行环 境。使开发人员的经验在面对类型大不相同的应用程序( 如基于w i n d o w s 的应用程 序和基于w e b 的应用程序) 时保持一致。按照工业标准生成所有通信,以确保基 于n e tf r a m e w o r k 的代码可与任何其他代码集成。 n e tf r a m e w o r k 具有两个主要组件:公共语言运行库( c l r ) 和n e tf r a m e w o r k 类库( f c l ) 。公共语言运行库是n e tf r a m e w o r k 的基础。可以将运行库看作一个在 执行时管理代码的代理,它提供核心服务( 如内存管理、线程管理和远程处理) ,而且 还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。事实 上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不 以运行库为目标的代码称为非托管代码。n e tf r a m e w o r k 的另一个主要组件是类库, 它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些 应用程序包括传统的命令行或图形用户界面( o u i ) 应用程序,也包括基于a s e n e t 所提供的最新创新的应用程序( 如w e b 窗体和x m lw e bs e r v i c e s ) 。n e tf r a m e w o r k 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码 的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。n e tf r a m e w o r k 不 但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。 n e t 框架使开发人员更喜欢使用现在的( 而不是早期的) 开发平台技术。尤其 是n e t 框架确实实现了代码重用、代码规范化、资源管理、多语言开发、安全、部署 和管理。新平台通过c l r 和f c l 提供了以下功能: 6 一致的编程模型:现在的操作系统的某些功能是通过动态链接库访问的,另些功 能则通过c o m 对象访问,而c l r 和f c l 使所有的应用程序服务都是通过一个公用的 面向对象的编程模型访问的。 简化编程模型:c l r 致力于简化w i n 3 2 和c o m 所需的基础结构。尤其是,c l r 使开发人员无需理解以下概念:注册表、全局唯一标示符等。c l r 使开发人员无需了解 这些概念,这些概念并不以c l r 的任何形式存在。当然,如果想编写一个与现有的 非n e t 框架交互的n e t 框架应用程序,则必须熟悉这些概念。 一次运行,总能运行:所有w i n d o w s 开发人员都知道“d l l h e u ”版本控制问题。 当新安装的应用程序的组件覆盖旧有的应用程序的组件时,导致旧应用程序无法正常运 行或者停止运行。现在的n e t 框架的结构己与应用程序组件隔离,这样,应用程序就 总要加载它在生成和测试时所用的组件。如果应用程序安装后可以运行,那么,该应用 程序应该是可以运行。此举将“d l l h e l l ”拒之门外。 简化部署:现在的w i n d o w s 应用程序很难安装和部署。需要创建若干文件,组测 表设置和快捷方式。而且,彻底卸载一个应用程序几乎是不可能的。在w i n d o w s2 0 0 0 中,m i c r o s o f t 引入了一种全新的安装引擎,有助于解决这些问题,但是,授权的m i c r o s o f t 安装程序包仍然可能无法正确处理每件事情。n e t 框架力求消灭这些问题。n e t 框架 组件( 简称为类型) 未被注册表引用。实际上,安装大多数n e t 框架应用程序只是将 文件复制到某个目录,将快捷方式添加到【开始】菜单、桌面或快速启动栏中,卸载应 用程序像删除文件一样简单。 广泛的平台支持:在编译n e t 框架的源代码时,编译器生成的是通用中间语言 ( c i l ) ,而不是传统的c u p 指令。运行时,c l r 将c i l 翻译成本机c p u 指令。因为 这种转换是在运行时完成的,因此用于主机c p u 。这意味着可以在任何一台运行与 e c m a 兼容的c l r 和f c l 版本的机器上部署n e t 框架应用程序。 编译语言集成:c o m 允许各种编程语言互操作。n e t 框架允许这些语言相互集成, 这样,可以把其他语言的类型当作你所用语言的类型来使用。例如,c l r 可以在c + + 中创建一个从v i s u a lb a s i c 实现的类中派生的类。c l r 之所以能做到这一点,是因为它 定义并提供了一个公共类型系统( c t s ) ,所有针对c l r 的编程语言都必须使用这个系 统。公共语言规范( c l s ) 描述了编译器实现这要将自己的语言很好的与其他语言集成 所必须遵守的规则。m i c r o s o f t 提供了集中编译器,他们生成的代码都是针对运行库的, 这些编译器是:c + + 托管扩展、c 弹、v i s u a lb a s i c n e t ( 现在又细分v i s u a lb a s i cs c r i p t i n g e d i t i o ,简称v b s c f i p t ,和v i s u a lb a s i cf o r a p p l i c a t i o n s ,简称v b a ) 和j s c r i p t 。另外,除 m i c r o s o f t 之外的一些公司和学术机构都开发了针对c l r 的其他语言的编译器。 简化代码重用:可以使用前面提到的机械创建自己的类,为第三方应用程序提供服务。 这使得代码重用极为简单,从而也给组件( 类型) 供应商提供了巨大的市场。 自动内存和管理( 垃圾回收) :编程需要大量技巧和规则,尤其是在管理诸如文件、 内存、屏幕空间、网络连接、数据库资源之类的资源时尤为明显。很常见的一个错误就 是忘记释放这些资源,最终导致应用程序在某个位置是可不正常执行。c l r 可以跟踪资 7 源使用,确保应用程序永远不会泄漏资源。实际上,没有办法可以显式“释放”内存。 类型安全验证:c l r 可以验证所有代码是否类型安全。类型安全能确保总是以兼容 的方式访问被分配对象。所以,如果方法输入参数被声明为接受4 字节的值,那么c l r 将会检测并防止此参数被当作8 字节值访问。同样,如果一个对象占有1 0 字节的内存 空间,应用程序就不可能使该对象出现允许读出1 0 个以上字节的形式。类型安全还意 味着执行流只会传输到众所周知的位置( 即方法入口点) 。没有任何方法可以做到构造 某个对内存位置的任意引用并使该位置的代码开始执行。总而言之,这些措施确保类型 安全可以消除许多常见的编程错误和常规的系统攻击。 丰富的调试功能:因为c l r 适用于很多编程语言,所以,可以方便地采用某种最适 合特定任务的语言来实现应用程序的某一部分。c l r 完全支持跨语言调试应用程序。 一致的方法故障范例:w i n d o w s 编程中最让人头痛得一个方面就是报告故障的函数 的风格不一致。一些函数返回w i n 3 2 状态码,一些返回h r e s u l l :还有一些则引发故障。 在c l r 中,所有故障都是通过异常p e r i o d 一报告的。异常允许开发人员将故障修复代 码和完成此项工作所需要的代码隔离开。这么做大大简化了代码的读写和维护,另外, 异常是跨模块和编程语言工作的。而且,与状态码和h r e s u l t 不同的是,异常不能被 忽略。c l r 还提供了内置的穿越堆栈的功能,使得查找错误和故障变得更加简单。 安全性:传统的操作系统安全提供了基于用户帐户的隔离和访问控制。该模型很有 用,但是他的核心是假定所有代码都具有相同的可信任性。这一假设只有当所有代码都 是从物理介质( 如c d r o m ) 或可信任的公司服务器安装时才有意义。但是,随着对移 动代码( 如w e b 脚本) 、i n t e m e t 上下载的应用程序、电子邮件附件等的依赖,需要以代 码更加集中的方式来控制应用程序的行为。代码访问安全提供了这方面的解决途径。 互操作性:m i c r o s o f t 意识到开发人员手头已经拥有大量的代码和组件。为了充分利 用n e t 框架平台的技术优势而重新改写这些代码将影响该平台的普及速度。所以,n e t 框架完全支持开发人员访问现有的c o m 组件,以及调用现有的d l l 中的w i n 3 2 函数。 2 3a s p f i e 动态网站开发技术 2 3 1a s p n e t 概述 a s e n e t 是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强 大的w e b 应用程序,是微软n e t 构架的重要组成部分。a s e n e t 不仅仅是下一版本 的a c t i v es e r v e rp a g e ( a s p ) ;它是统一的w e b 开发平台,用来提供开发人员生成企业 级w e b 应用程序所需的服务。a s e n e t 的语法在很大程度上与a s p 兼容,同时它还 提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。可以通过 在现有a s p 应用程序中逐渐添加a s e n e t 功能,随时增强该a s p 应用程序的功能。 a s p n e t 是一个已编译的、基于n e t 的环境,可以用任何与n e t 兼容的语言( 包 括v i s u a lb a s i c n e t 、c 撑和j s c r i p t n e t ) 创作应用程序。另外,任何a s e n e t 应用 程序都可以使用整个n e t f r a m e w o r k 。开发人员可以方便地获得这些技术的优点,其中 包括托管的公共语言运行库环境、类型安全、继承等等。 a s p n e t 可以无缝地与w y s i w y gh t m l 编辑器和其他编程工具( 包括m i c r o s o f t v i s u a ls t u d i o n e t ) 一起工作。这不仅使得w e b 开发更加方便,而且还能提供这些工 具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到w e b 页的g u i 和完全集成的调试支持。 当创建a s p n e t 应用程序时,开发人员可以使用w e b 窗体或x m l w e bs e r v i c e s , 或以他们认为合适的任何方式迸行组合。 a s p :n e t 具有以下一些优点: ( 1 ) 运行效率的大幅提高 a s p n e t 是把基于通用语言的程序在服务器上运行。不像以前的a s p 即时解释程 序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的 解释强很多。 ( 2 ) 世界级的工具支持 a s p n e t 构架可以用m i c r o s o f t 公司最新的产品v i s u a ls t u d i o n e t 开发环境进行开 发,w y s i w y g ( w h a t y o us e ei sw h a t y o ug e t 所见即为所得) 的编辑。 ( 3 ) 强大性和适应性 因为a s e n e t 是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以 使它运行在w e b 应用软件开发者的几乎全部的平台上( 笔者到现在为止只知道它只能 用在w i n d o w s 2 0 0 0 s e r v e r 上) 。通用语言的基本库,消息机制,数据接口的处理都能无 缝的整合到a s e n e t 的w e b 应用中。a s p n e t 同时也是语言独立化的,所以,程序员 可以选择一种最适合的语言来编写程序,或者把程序用很多种语言来写,现在已经支持 的有c 撑( c + + 和j a v a 的结合体) ,v b ,j s c r i p t 。将来,这样的多种程序语言协同工作的 能力保护现在的基于c o m + 开发的程序,能够完整的移植向a s e n e t 。 ( 4 ) 简单性和易学性 a s e n e t 使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和 网站配置变得非常简单。例如a s e n e t 页面构架允许建立用户自己的界面,使其不 同于常见的v b l i k e 界面。另外,通用语言简化了开发过程,把代码结合成软件简单 得就像装配电脑。 ( 5 ) 高效可管理性 a s p n e t 使用一种字符基础的、分级的配置系统,使服务器环境和应用程序的设 置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地 的管理员工具就可以实现。这种被称为 z e r ol o c a la d m i n i s t r a t i o n ”的哲学观念使 a s e n e t 的基于应用的开发更加具体和快捷。一个a s p n e t 的应用程序在一台服务 器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动,一切就是 这么简单。 ( 6 ) 多处理器环境的可靠性 a s e n e t 已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理 器的环境下用特殊的无缝连接技术,将很大地提高运行速度。即使现在的a s e n e t 9 应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们 的效能,但现在的a s p 却做不到这一点。 ( 7 ) 定义性和可扩展性 a s p n e t 设计时考虑了让网站开发人员可以在自己的代码中自己定义”p l u g - i n ”的 模块。这与原来的包含关系不同,a s p n e t 可以加入自己定义的组件,网站程序的开 发变得更加简单。 ( 8 ) 安全 基于w i n d o w s 认证技术和应用程序配置,可以确保你的源程序是绝对安全的。 2 3 2a s p n e t 对数据库的访问 使用a s p n e t 访问数据库要通过使用a d o n e t 组件。a d o n e t 是微软在n e t 平台下提出的数据库访问模型,与a d o 相比,a d o n e t 与a d o 有很大的不同,它是 一个全新的数据访问模型,而并不是a d o 为适应n e t 基础构造而进行改进的版本。 访问a d o n e t 中的数据源是由托管提供程序所控制。虽然托管提供程序与o l e d b 有两处重大的不同,但是二者是极为类似的。首先,托管提供程序在n e t 环境下运 行,通过d a t a r e a d e r 和d a t a t a b l e n e t 类来检索和展示数据;第二,它们的体系结构都 比较简单,是因为为了适应n e t 而进行了优化【3 】。 此时,a d o n e t 分成两种不同类型的托管提供程序:一种用于s o ls e r v e r 7 0 或 更高版本,另一种适用于所有可能已经安装的o l ed b 提供程序。虽然运用在两种托管 提供程序中的类是不同的,但它们却都遵循相类似的命名方式。除前缀之外,其他名称 都是相同的,前一种情况前缀为s q l ,后一种则是a d o 。 需要利用s q l 类来访问s q ls e r v e r 表,因为s q l 类会跳过由o l ed b 提供程序 呈现的中间层,直接进入数据库服务器内部a p i 。a d o 类是位于o l ed b 提供程序顶 端的n e t 接口,利用c o mi n t e r o p 桥来进行工作。 a d o n e t 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后 使用的不连续组件。a d o n e t 包含用于连接到数据库、执行命令和检索结果的n e t f r a m e w o r k 数据提供程序。可以直接处理检索到的结果,或将其放入a d o n e td a t a s c t 对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方 式向用户公开。a d o n e t 的d a t a s e t 对象也可以独立于n e tf r a m e w o r k 数据提供程 序使用,以管理应用程序本地的数据或源自x m l 的数据。 2 3 3 为何使用a s p n e t 开发考试系统 相对比于传统的a s p 方式,a s e n e t 是把基于通用语言的程序在服务器上运行。 不像以前的a s p 即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的 执行效率得到显著提高。同时a s e n e t 是基于通用语言的编译运行的程序,所以它的 强大性和适应性,可以使它运行在w e b 应用软件开发者的几乎全部的平台上,这些优 点可以改善考试系统的效率,同时a s p n e t 的安全性比传统a s p 有了很大的提高,这 正是考试系统的安全性所要考虑的,a s e n e t 的另一好处是它完整的集成了对x m l 以 及w e b 服务的各种支持。用a s p n e t 开发的考试系统可以由此开发出更为强大的功能。 1 0 a s e n e t 使用a d o n e t 进行数据库处理,a d o n e t 提供数据访问方式使用起来 更为简单,功能更加强大,同时具有很好的性能。本考试系统使用微软的s q l s e r v e r 2 0 0 0 作为数据库管理软件。由于s q l s e r v e r n e t 同为微软的产品,a d o n e t 对s q l s e r v e r 所作的优化更提升考试系统的数据库执行效率。 2 4 面向对象的程序设计 要想使开发的考试系统具有良好的稳定性和可扩展性,使用面向对象的开发方法是 目前最好的选择。面向对象技术经过多年的研究实践,已经成为一种成熟有效的开发方 法。 面向对象的方法是一种分析方法、设计方法和思维方法。面向对象方法学的出发点 和所追求的基本目标是使人们分析、设计与实现

温馨提示

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

评论

0/150

提交评论