- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
应用D技术在远程教育中实现组件化的网络虚拟实验室探讨的论文.doc
应用D技术在远程教育中实现组件化的网络虚拟实验室探讨的论文
摘要:为了使虚拟实验室适合远程网络教学的需要,使它能够在网络上工作,利用d技术以c/s方式实现了组件化的虚拟实验室。将模拟计算部分作为服务器端,界面输入/输出作为客户端。在多用户的情况下d没有提供分布式策略,则利用调度对象来平衡负载,从而引入分布式处理方式。
关键词:远程教育;d;虚拟实验室;客户/服务器(c/s)
abstract: in order to make the virtual laboratory for teaching the need for long-distance ulation as part of the server-side, the interface i / o as a client. in many cases, users did not provide d distributed strategy, the use of targeted scheduling to balance the load, so the introduction of distributed processing odule)技术。
1组件对象模型()
现代的软件开发都以模块方式进行。每个模块均有自己的功能,并与其它模块以接口进行通信。于是,复杂的软件系统??可以用搭积木的方式进行。这就是组件软件的基本思想。就是实现软件组件化的一种努力。
实际上,是一种规定了组件之间的接口标准。还引入了面向对象的思想,对象是一个能完成一定功能的软件模块。对象是组件的基本构成,它以接口的方式向其它对象或软件提供服务。通常情况下,对象的服务与被服务都是客户/服务器的关系。对象不同于c++对象。c++对象是类的实例。c++是面向对象的编程语言,是人们在源码级试图实现软件模块化的一种努力。对象是二进制的规范。换言之,c++在源码级提供了代码重用的便利,而是在二进制级提供了可重用性。的二进制级重用是通过对象工作来实现的。它主要有两种方式:(1)包容,一个对象通过利用另一对象的功能实现同样的接口。(2)聚合,一个对象直接将另一对象的接口提供给客户。
由于的实现是在二进制级,而不是源码级,于是决定了与语言的无关性。一个用c或c++实现的可以与一个用basic实现的客户正常地通信。因此,整个软件的一部分可以用一种语言开发,而另一部分可以使用其它语言。这给软件开发者在根据性能的要求做出编程语言选择时提供了方便。的另一个特性是进程的透明性。一个组件可以有很多种形式出现,比如dll,exe等。dll形式的组件与客户程序工作在同一进程,exe组件工作在独立的进程。无论是进程内的组件还是进程外的组件,对于客户来讲都是同样的,客户无需关心进程间的通信。进程间的通信是复杂的,然而掩盖了这种复杂性。
2分布式组件对象模型(d)
给软件开发带来了极大的便利。但是,在网络环境下,单机上的组件重用和进程透明性已不能满足需要,必须扩展。microsoft的d便是在网络环境下的无缝扩展,d能够支持在局域网、广域网,甚至在inter上与不同计算机的对象之间的通信。使用d,应用程序可以在位置上达到分布性,从而满足客户和应用的需求。
d隐藏了网络通信的细节,在可以利用的网络协议的支持下,组件或客户无需关心对方组件的位置,便可以进行通信。因此d具有协议无关性。在网络环境下,组件之间的通信不像在的进程内或进程间的lpc(localprocedurecall),而是以rpc(remoteprocedurecall)来完成的。客户与对象必须通过proxy和stub来进行通信。proxy工作在客户进程中,stub工作在服务器进程中。此外,d提供了所有在网络上工作的软件都应有的特殊性与安全性。
3/d在网络虚拟实验室中的应用
从程序设计的角度来看,/d的结构是这样的:对象是构建组件的基本元素,而服务器为组件提供进程内/外的服务,提供了组件工作的场所。对象是一个自包含的结构,提供一定的功能,它不能直接被客户使用,客户必须通过接口访问它。对象必须通过接口来表现自己的功能,甚至对象的创建都不能由客户直接完成,对象的创建必须借助一个特殊的对象,即类厂来完成。
对于客户,它可以是一个组件对象也可以是一个支持的普通程序。它通过api来调用类厂创建对象,并增加引用计数,来决定对象的生存期。这样库和服务器会在适当的时候卸载。
虽然c++对象和对象有本质的区别,但是它们在二进制一级的构造上有一定的相似性,c++对象和对象都使用vtable。而且,c++的对象描述能力使它很容易创建。因此c++是实现的最佳选择。visualc++在co
m编程方面提供了两种方式:一种是mfc(microsoftfoun
您可能关注的文档
最近下载
- 科室全成本核算.ppt VIP
- (完整版)幼儿园五年发展规划【可编辑版】.docx VIP
- 福克纳 A Rose for Emily 献给艾米丽的玫瑰 (英文原文+译文).pdf VIP
- 高考数学总复习《函数性质》专项测试卷及答案.pdf VIP
- 课题申报书:核心素养引领下的小学数学课堂教学方式的转变研究.docx VIP
- 人教版数学五年级上册第七单元教案(含单元备课).pdf VIP
- 湖北省武汉2025届高三上学期10月月考物理试题含答案.docx VIP
- 2025年秋期部编人教版六年级上册语文全册核心素养教案(教学反思有内容+二次备课版).docx
- 初中整本书阅读系列之《红星照耀中国》第8-9篇 同红军在一起PPT课件.pptx VIP
- 2024年初级会计职称《经济法基础》精讲课件.pptx VIP
文档评论(0)