【必修】组件考试向精简版笔记 chapter3 CORBA

本文详细阐述了CORBA组件技术中的stub和skeleton的概念,以及idl编译器在设计和工作原理中的关键作用。讲解了idl文件的编译过程,从输入IDL源文件到生成客户桩、服务器框架和头文件。还涉及了如何利用代理模式和ORB解决远程调用问题。
摘要由CSDN通过智能技术生成

CORBA

(一)名词解释

1.【2018】【2019】CORBA组件技术中的stub和skeleton

他们总体来说都可以理解为通过代理模式来完成远程调用功能,遵循接口组件的规则,前者完整实现接口,后者部分实现。
①客户桩stub,是在编译时确定的静态接口。它位于客户对象的本地,接受客户的请求,对于客户来说相当于远程的执行对象;
②骨架Skeleton,分动态骨架与静态骨架。它针对执行对象来说代表了远程客户的作用,可以在本地执行调用对象。

(二) IDL编译器

0. 结合代理模式概述CORBA组件技术中IDL编译器的设计原理。
针对IDL编译器的特点,IDL编译器的开发模型应该具备三个层次:输入处理,中间信息表示,目标代码输出。
① 在输入处理中,对IDL文件进行分析,为后两层屏蔽语法和词法的区别;
② 在中间信息表示层中为另外两层提供通信的机制;
③ 在输出层中需要从第二层获取信息,生成目标代码。

通过这种分层机制,扩展不同语言的IDL编译器只需在目标大麦输出层中做相应的修改即可。

1.【2017】 IDL编译器的输入、主要的输出结果分别是什么(或者有哪些)?
输入:IDL源文件;
输出:客户桩文件stub,服务器框架skeleton,头文件stub。用途是:桩文件和框架文件都用头文件来定义结构和常量。

接口描述语言IDL专门用来描述接口,是一个描述软件组件接口的语言规范,没有语句可定义数据类型以及数据类型关系,可定义接口和接口见的关系。
IDL用中立语言进行描述,能使软件组织间相互通信,IDL提供了一个“桥”来链接不同的系统。

2.【2017】【2019】概述IDL编译器根据输入得到输出的工作原理,即假设让你编写IDL编译器程序,你如何设计?
介绍你的设计思路。可以利用文字、算法、伪代码中的任何一种形式回答。
1) 编写IDL接口定义文件;
2) 将接口定义文件编译为相应高级语言源代码,产生服务父框架与客户端存根;
3) 基于服务器框架,编写服务对象实现程序;
4) 给予客户端存根,编写客户对象调用程序;
5) 分别编译客户对象和服务对象程序;
6) 运行服务对象程序。

4.【2017】结合代理模式(Proxy设计模式)、对象请求代理ORB和IDL编译器的输出结果,概述CORBA组件技术解决远程调用问题的基本原理。

用户发出请求,该请求由代理stub经过中间件传递给skeleton,skeleton把骑牛传递给接口进行具体实现。
【stub】IDL编译器把某个对象类型的IDL操作定义映射到例程。相当于server在client上的代理,位于客户本地,接受客户请求,远程执行对象服务,向ORB提交请求,并对接收到的处理结果进行解释,把结果和异常返回给客户。
【skeleton】IDL编译器把客户机操作映射到服务器实现的方法上。相当于client在server上的代理,针对执行对象来说代表了远程客户,在本地调用执行对象服务于ORB通信。

5.【2018】IDL编译器是利用CORBA组件技术开发软件的重要工具,说明为什么称它为“编译器”,而不是“解释器”、“翻译器”或“转换器”?

6.接口描述语言IDL的作用是什么?它与程序设计语言的主要区别是什么?
IDL专门用来描述接口,是一个描述软件组件接口的语言规范,可以定义接口和接口间的关系。
IDL用中立的语言进行描述,能使得软件组件之间相互通信。
IDL提供了一个“桥”来链接不同的系统。

与程序设计语言的主要区别:IDL是定义语言而不是编程语言,不能编写算法和流程。

7.叙述IDL编译器是怎么根据输入得到输出的,即它的工作原理。
输入:IDL源文件;
输出:客户桩文件stub,服务器框架skeleton,头文件stub。
工作原理:用户发出请求,该请求由代理stub经过中间件传递给skeleton,skeleton把骑牛传递给接口进行具体实现。

8.简述实现CORBA对象的一般步骤
1)编写IDL接口定义文件;
2)将接口定义文件编译为相应高级语言源代码,给予客户端存根,服务器框架与客户端存根;
3)基于服务器框架,编写服务对象实现程序;
4)基于客户端存根,编写客户对象调用程序;
5)分别编译客户对象和服务对象程序;
6)运行服务对象程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值