CORBA 连接:CORBA 3.0 的 IDL

10分钟本地部署AI Agent:OpenClaw+Hermes零GPU私有化实践 AI Agent(智能体)作为自动化任务编排与人机协同的核心范式,正从云端推理向轻量本地化演进。其本质是将浏览器操作、API调用、文件处理等原子能力封装为可调度的Skill(技能),通过无头运行时(如OpenClaw)完成决策链路,再由桌面前端(如Hermes)提供低延迟交互。这种‘小脑+反射弧’架构不依赖大模型本地推理,显著降低硬件门槛与数据外泄风险,适用于隐私敏感场景、中小团队MVP验证及边缘设备部署。本文聚焦本地化落地的关键路径:零CUDA依赖的Python原生部署、Skill能力契约设计规范、跨平台 阅读详情

CORBA 连接:CORBA 3.0 的 IDL


内容: 
 
为什么使用软件组件? 
组合接口 
“是”对“具有” 
导航和等价接口 
结束语 
参考资料 
关于作者 
对本文的评价 
 
相关内容: 
 
CORBA Component Model (CCM) 
The OMG's new CORBA Component Model 
CORBA notification services 
 
扩展接口间的关系 
Dave Bartlett (dbartlett@pobox.com)
顾问、作家兼讲师
2001 年 7 月

“对象管理组织(OMG)”的“接口定义语言”已经能使开发人员根据继承创建对象关系。然而,当处理复杂设计时,经常需要支持包含多个接口的对 象,并且这些对象是通过组合而不是通过继承来构造的。本周,Dave Bartlett 通过扩展“组件实现定义语言”与标准化定义组件接口的方式,解释 了“CORBA 组件模型”如何实现这种需要。
在开始讨论软件组件之前,有必要定义它们是什么以及为什么我们希望使用它们。然后,讨论“组件实现定义语言(CIDL)”以及 CIDL 如何使组件式软件成为现实。

为什么使用软件组件?
为什么我们要使用软件组件?我们的汽车是由零部件(组件)组成;为什么我们喜欢这样,为什么零部件(组件)是重要的?汽车使用零部件(组件)是因 为当零部件(组件)用坏或发现有缺陷时,很容易替换掉它(比如轮胎)。这有助于管理变更,我认为这是使用组件的首要原因。在我的汽车里,我不能保持全部应 用最新的技术,每一个组件隔离了该项技术的某个方面。这导致了使用组件的第二个原因,管理复杂性。分而治之的策略简化了系统中大量的功能。最后一个原因是 重用。为什么重用是最后一个?因为我从来没有真正尝试拆掉我妻子汽车的交流发电机而将它用到我的汽车上,但我猜想我可能会这样做。这可能需要某种层次的式 样更新。重用是一个宏伟的目标,但要达到这个目标却格外困难。如果系统易于维护并且随着环境变化和技术改进易于升级系统,那么从长远来看,该系统的价值将 会极大地增加。脑子里有了这些目标之后,让我们创建一些定义。

组件是象这样的结构化软件单元,它们:

协同定位函数和数据之间的相关性,所以创建结合 
封装软件单元以减少耦合,并将组件用户与数据存储细节或功能实现隔离开 
提供唯一的标识,不考虑状态 

基于组件的软件的目标是创建高度结合的、合作良好的部件,但各自有明显不同的任务,以及创建系统中组件间低耦合性。这需要系统设计者从对象规范来 扩展面向对象原则到用接口定义明确地表示对象相关性。这种组件能力的规范可以划分成跨几个接口。将组件规范划分成多个接口可以使组件内相关性被限制到个别 接口,而不是整个组件规范。

例如,提供时间与日期函数的简单组件也必须实现几个接口,这些接口使得该组件在组件容器中能合作工作。对组件容器的更改需要对那些接口进行更改,但不需要更改时间与日期函数。反之亦然:可以不改变接口而更新时间与日期函数,这提供了组件的维护功能。

总之,基于组件的系统是不同的,因为它将规范和实现分离开,还因为将组件规范分成了表示组件和容器角色的一些具体接口。

组合接口
建立接口之间的关系和建立实现类之间的关系是组件设计的基本行为。设计这些关系的两种方式是继承和组合。“Gang of Four”这本设计模 式书(请参阅参考资料)的第一章通过对对象、实现和重用的广泛描述展示了对象编程的精髓。这一章明确地提出了使重用成为现实的困难性。继承是面向对象语言 典型的特征之一。它也是大多数学生能快速和有效掌握的事物。然而,继承确实有它的不利之处,而对于这些,学生直到具有更多面向对象的经验或除非受益于具有 理性意识的导师时,才能意识到。

在 OO 开发中,继承出现在两个不同的阶段。一方面,接口继承(也称作为子类型),它描述当一个对象用来替换另一个对象时。在 C++ 中,通 过从纯抽象类(具有纯虚拟成员函数的类)公共地继承来做到这一点。由于 Java 编程语言有 interface 关键字,很容易发现接口继承。另一方 面,类继承,它依照另一个对象的实现定义对象实现。类继承也称为实现继承。所以,虽然一些编程语言不支持接口继承和实现继承之间的差别,但优秀的程序员在 实践中可以区分这两者。例如,C++ 通过由抽象类定义类型来处理这两者的差别。

许多设计模式取决于接口继承和实现继承之间这种微妙的差别。Observer 设计模式经常用抽象类(它们是纯接口)来实现。Composite 模式是用来定义公共实现,而这个组合中的组件定义公共接口。

OMG IDL 总是允许您创建基于继承的对象关系。然而,很多时候,我们的设计需要支持包含多个接口的对象,而这些接口是通过组合而不是通过继 承来构造的。对象继承允许您依照另一个类来定义这个类的实现,而对象组合允许您通过将对象集合或组合在一起来定义一个类。OMG IDL 需要表达组合和 继承的能力。

OMG 已经认识到这些缺陷,并且一直在尝试解决它们。在 1996 年,OMG 发布了 RFP (Request for Proposal)。RFP 的需求将解决对多个接口的需要。CORBA Component Model 被认为是完成最初 在这个建议下提出的需求。

“是”对“具有”
当通过继承将子类和超类联系起来时,我们可以说子类具有了超类的一些特征。例如,狗子类“是”犬科超类的代表,可以强制转化成犬科类。“具有”关系是有很大区别的,它表示组合。

一个重要目标是使用标准接口,针对基于开放标准的组件,也许已经定义了这些接口。播放盒式磁带和 CD 的 stereo 组件都有相似的接口, 所以我们可以将它抽出来形成它自己的接口。这意味着有一个 CassetteDeck 和 CDPlayer 都使用的 AudioPlayer 接口。 AudioPlayer 类似于清单 1 中所示。

清单 1. AudioPlayer 接口

typedef sequence<octet> SoundBytes;
typedef int Speed;

interface AudioStreamIterator {
    void getStream(out SoundBytes nextSound,
                   out boolean hasMore);
};

interface AudioPlayer {
   attribute string name;
   AudioStreamIterator getSoundStream(in String strSound);
   int play(in AudioStreamIterator as);
   int fastForward(in Speed spd);
   int rewind(in Speed spd);
};

component CassettePlayer supports AudioPlayer{
   //  The facet for Client components.
   provides AudioPlayer audioPort;
};

component CDPlayer supports AudioPlayer{
   //  The facet for Client components.
   provides AudioPlayer audioPort;
};

component Stereo {
   attribute string name;
   // The receptacles for Cassettes or CDPlayers
   uses AudioPlayer Cassette;
   uses AudioPlayer CD;
};

AudioPlayer 接口有四种处理模糊定义类型的基本方法。SoundByte 是八位元的序列。这意味着它是一个不知道长度的字节流,并 且由于它是一个八位元,将不会排列它。getSoundStream() 将返回 AudioStreamIterator 对象,该对象将  SoundByte 装入其中。由于声音文件可以是很庞大的,我们可以将这个序列分割成多个部分,从而使 RMI(远程方法调用)免于陷于困境。 play() 方法将 AudioStreamIterator 作为“in”参数。fastForward() 允许您快速前进至流的某个地方, rewind() 使您倒回至流前面的某个地方。

这就是我们的接口。component 关键字是 CIDL 的添加物之一。component 允许 IDL 设计者在其主体内包含该组件的任 何属性声明,以及连同一起的组件平面(组件暴露给外界的接口)和容器(组件使用的接口)的声明与该组件可能需要的任何事件的源和接收器。然而,请注意,方 法中不允许包含 component 关键字。这是因为我们不是在创建接口 - 我们是在组合接口来形成“组件”。CDPlayer 和  CassettePlayer 组件提供了 AudioPlayer 接口,但 Stereo 组件是作为客户机工作,因为它使用该组件的  CDPlayer 和 CassettePlayer。由于有了这个 CCM 的添加物和新的 IDL 关键字,您在创建关系时比以前有更大的灵活性。

AudioPlayer

导航和等价接口
所有平面、容器、事件源、事件接收器和属性的声明都映射到生成等价接口(CIDL 规范用这个术语来称谓)的操作。我必须承认我感到自己正走在刀 刃上,因为我没有可以使我能检测规范和 IDL 的 CCM 和 CIDL 的实现。我的理解是 CORBA 3.0 CIDL 编译器会为您从组件定义 自动生成等价接口。所以,CDPlayer 组件有类似于清单 2 所示的等价接口。

清单 2. CDPlayer 接口

interface CDPlayer : Components::CCMObject, ManagedObject{
   AudioPlayer provide_audioPort;
};

等价接口中的操作允许组件的客户机检索其平面的引用。除此之外,所有组件从组件基本接口 CCMObject 那继承,该基本接口提供了带一般导航操作(通过 Components::Navigation 接口)的等价接口。这个导航提供类似于清单 3 所示的功能。

清单 3. Components::Navigation 功能

module Components {
   valuetype FacetDescription {
     public CORBA::RepositoryId InterfaceID;
     public FeatureName Name;
   };

   valuetype Facet:FacetDescription {
     public Object ref;
   };

   typedef sequence<Facet> Facets;
   typedef sequence<FacetDescription> FacetDescriptions;

   exception InvalidName{};

   interface Navigation {

     Object provide_facet(in FeatureName name)
                         raises (InvalidName);

     FacetDescriptions describe_facets();

     Facets provide_all_facets();

     Facets provide_named_facets (in NameList names)
                                  raises (InvalidName);

     boolean same_component(in Object ref);
   };
};
生成等价接口是用来提供组件接口导航。所有组件接口都会继承它。如果您熟悉 COM 世界,这会使您想起来自 IUnknown 的  QueryInterface() 和在 CoCreateInstanceEx() 中使用的 Multi_QI 结构。通过该导航提供类似以下的行 为:

provide_facet() 方法返回由 name 参数表示的平面的引用,或者如果没有发现由那个 name 参数表示的平面,则返回 InvalidName 异常。 
describe_facets() 操作返回由组件提供的所有平面的序列。返回的值类型 FacetDescription 将包含 RepositoryId 和该平面的名称。 
provide_all_facets() 类似于 describe_facets,但返回的值类型现在将包含支持每个平面的对象的引用。 
provide_named_facets() 将取一列名称,并返回包含 names 参数中平面的描述和引用的序列(在结构上与 provide_all_facets() 中返回的结构是一致的)。 
same_component() 将允许客户机决定是否两个引用属于同一个组件实例。该方法是组件实现相关。 

结束语
下个月,我将继续研究 CCM 中的 CIDL 构造。对于基于 CORBA 的系统,IDL 是基本的构建技术,将这一点牢记在心中是很重要 的。对 IDL 的更改引起了规范和 CORBA 社团的共鸣。添加来创建 CIDL 的关键字是相当广泛和直接明了。很明显,OMG 的梦想是使  CIDL 足够直接明了,以详述软件组件之间的各种关系,以及自动生成许多重现函数和服务用法模式。通过扩展 CIDL,OMG 维护了其语言和平台的 中立,但推动了结合坚实工程原则的软件标准。

参考资料 

关于下一代 CORBA 的介绍,请参阅 CORBA Component Model (CCM)(developerWorks,2001 年 4 月)上最近的 CORBA 连接。 
在 OMG 主页上,会发现许多关于 CORBA 更改方面的文档和讨论。 
如果对 CORBA 3.0 的起源感兴趣,那么 CORBA Component Model RFP 是一份很好资料。 
如果想了解 CORBA 和 CCM 有什么新事物,那么请关注 CORBA 和 CORBA Component Model (CCM) 页面。 
Gopalan Suresh Raj 在其个人主页上提供了一篇有关 CCM 不错的简介。 
来自 java.sun.com 的新闻发布介绍了作为工业标准的 CCM。 
Dr. Dobb's 全面观察了 CCM,并研究了 CCM 如何将与 EJB 和 COM+ 相对抗(DR. Dobbs Journal,2001 年)。 
学习更多有关用 CORBA 来编程的基础知识,请阅读 Michi Henning 和 Steve Vinoski 的 Advanced CORBA Programming with C++ (Addison-Wesley,2000 年)这本极好的书。 
也可以阅读 Jon Siegel 的 CORBA 3 Fundamentals and Programming (John Wiley and Sons,2000 年)。 
Java 开发人员应该看一下由 Gerald Brose、Andreas Vogel 和 Keith Duddy 著作的 Java Programming with CORBA(John Wiley and Sons,2001 年)。 
查找关于 RMI 和 CORBA 简介的 Java 开发人员也许想阅读 IBM Learning Services 教程 RMI, CORBA, and Distributed Objects。 
从 Object Oriented Concepts Inc 下载 Orbacus 4.1.0 以及附带的 Notification Service 实现。 
如果想学习 Java 编程,那么请从 Bruce Eckel 的 Mindview.net 以及他的免费电子版书籍 Java 编程思想,第二版(Prentice Hall,2000 年)开始。 
Gang of Four 一书, Design Patterns: Elements of Reusable Object-Oriented Software 完整地介绍了设计模式(Addison-Wesley,1995 年)。 
WebSphere 开发人员希望了解关于  Integrating CORBA ORB with IBM WebSphere Application Server (WebSphere Developer Technical Journal,2001 年 6 月)。 
关于组件,有新的东西?WebSphere 组已经编辑了关于基于组件开发(CBD)的理论和实践的资源列表。 

关于作者
 Dave Bartlett 居住在美国宾夕法尼亚州的 Berwyn,他是顾问、作家兼讲师。他是 Hands- On CORBA with Java 的作者,这是一本适用于公共课程或企业内部培训的 5 日教程。目前,Dave 正将课程资料编成书,书名是  Thinking in CORBA with Java。Dave 拥有宾州大学的工程和商业硕士学位。如果您对某个主题还有疑问或感兴趣,可通过  dbartlett@pobox.com 与 Dave 联系。 
  
体验CORBA组件模型CCM:1、引言 体验CORBA组件模型CCM:1、引言摘要:在比较CORBA2.x与CORBA3.x的基础上,简要介绍CCM引入的新特性。一、概述虽然CORBA2.x已成功应用于诸多软件系统的开发,但CORBA2.x仅是一个分布式对象计算模型,并不是一个组件对象模型,OMG组织考虑到CORBA2.x存在的以下问题:·        缺乏功能分界在CORBA2.x对象模型中,所有的接口均被视 阅读详情

相关推荐

公共对象请求代理体系结构CORBA简介

CORBA(Common Object Request Broker Architecture, 公共对象请求代理体系结构)是由OMG(对象管理组织,Object Management Group)提出的应用软件体系结构和对象技术规范,其核心是一套标准的语言、接口和协议,以支持异构分布应用程序间的互操作性及独立于平台和编程语言的对象重用 CORBA的发展历程1. 对象管理组织(OMG)简介

Gabriel的专栏 2075

CORBA对象生命周期之早期和后期绑定-Java基础-Java-编程开发

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/javascript"

java专栏 374

Java实现的通用Corba客户端:跨平台的Corba服务测试工具

Corba,即通用对象请求代理体系结构(Common Object Request Broker Architecture),是一种由对象管理组织(Object Management Group, OMG)在1990年代初提出的分布式对象计算(DOC)标准。这一技术使得位于不同平台、使用不同编程语言开发的对象能够互相通信,实现对象间的跨平台互操作性。IDL是Corba用来描述对象接口的语言。它定义了一套独立于编程语言的接口规范,使得对象的接口能够在不同的编程语言间转换。

weixin_36212459的博客 1224

华为北向网管NCE开发教程(3)CORBA协议开发

介绍如何使用CORBA接口对接华为北向网管NCE开发

歪桃的博客 1万+

java开发中兴corba接口所需idl文件

java开发中兴corba接口所需要的中兴idl文件,用于编译生成中兴corba服务端接口 corba开发参考:https://my.oschina.net/dong706/blog?catalog=5757620

复用浏览器之跳过扫码登录

复用浏览器 1、通过命令启动浏览器:chrome --remote-debugging-port=9222(前提是退出所有的chrome浏览器) 2、启动浏览器之后,在地址栏输入127.0.01:9222,成功复用如下图所示:

qq_43911915的博客 2034

CORBA(二)

动态调用接口简称DII,用来在运行时刻发现并调用目标对象中的操作。接口存储库简称接口库(IR),时运行时的分布式数据库,存放IDL定义接口的机器可读版本。动态框架接口简称DSI,该接口允许服务器在运行时刻动态地解释并实现一个调用。CORBA允许客户在运行时选择目标对象,然后动态地调用目标对象上的指定操作而不必像静态调用那样,事先通过IDL编译器生成码根。动态调用的基本含义是构造并发出一个请求,请求中的参数说明只有在运行时才能知道。目标对象上的操作存放在对象的接口中,而动态调用时的接口信息则存放在接口库中。

qq_61521488的博客 1743

一文详解本地知识库RAG(检索增强):LangChain + Hugging Face 三件套 + 本地大模型 + MCP 协议 + Chroma + Agent 全流程实战

模型上下文协议(MCP)是 Anthropic 推出的开放标准,基于 JSON-RPC 2.0,为 AI 应用与外部工具/数据源之间提供统一的双向通信协议,被称为“AI 应用的 USB-C”。LangChain 是一个围绕 LLM、提示模板(Prompts)、记忆(Memory)、链(Chains)、工具(Tools)和代理(Agents)等组件打造的开源框架,旨在简化复杂自然语言应用的开发。:任意可调用的功能或服务(API、数据库查询、本地函数等),由 Agent 或 Chain 在推理过程中调用。

weixin_41645791的博客 1425

中间件学习——技术平台三步曲

在前面两篇文章中,我们了解了中间件的基本概念和中间件的主要技术分类,在这篇文章中我们了解下基于中间件的主流技术平台。   技术平台       现有的基于中间件的主流技术平台一般典型的应用是为三层/多层结构的分布式软件系统提供各种开发支撑,因为三层结构的分布式软件的核心为中间层,因此支撑主要集中在对中间层开发的支撑上,目前应该最广泛的技术平台有三类:     基于 OMG(Obj

4785

Spring Boot与Apache Ignite集成:构建高性能分布式缓存和计算平台

Apache Ignite是一个高性能的分布式内存计算平台,支持内存缓存、分布式计算、流处理和机器学习等功能。它提供了低延迟的数据访问和强大的计算能力,适用于需要高性能和可扩展性的应用。将Apache Ignite集成到Spring Boot应用中,可以显著提高应用的性能和可扩展性。Spring Boot的简单配置和Ignite的强大功能相结合,使得开发和部署更加高效。首先,创建一个新的Spring Boot项目。可以通过Spring Initializr(https://start.spring.io/)

九天的专栏 2142

MicroCap声学仿真介绍(一)

5-频率上下限选择,需要注意的是,第一个数字是上限,第二个数字是下限,如果填反了,会有报错提示;下三角可以选择“Auto”、“linear”、“log”和“list”,设置的是频率点之间的距离和频率点的数量。Component是用来选择部件的模块,如上图所示,声学仿真常用到的是“Electroacoustic Macros AC”、“Electroacoustic Macros TR”、“NXP Transducers”以及“NXP HD components”。3是声学部件,是声学仿真中常用的部件。

山无忧的博客 5096

连接Corba和dotNet

连接Corba和dotNet翻译HowCanIDo原文http://www.devx.com/interop/Article/19916/0/page/1Corba, 公用对象请求代理程序结构(Common Object Request Broker Architecture)的首字母缩写,在跨平台和跨语言(如J2EE)的分布式(多层)系统通信中具有广泛的应用,将CORBA连接到dot

武子的专栏 1991

ESP32-C3模组上跑通OTA升级(3)

ESP32-C3模组上跑通OTA升级(3)

phmatthaus的专栏 1351

CORBA的简单介绍及HelloWorld

CORBA概述 CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程 序体系规范。或者说 CORBA体系结构是OMG为解决分布式处理环境(DCE)中,硬件和软件系统的互连而提出的一种解决方案。 OMG:Object Management Group,对象管理组织。是一个国际化的、开

DryKillLogic的专栏 2万+

(十二)深入理解蓝牙BLE之“移植Bluez 5.18源码到嵌入式平台”

在某嵌入式平台进行蓝牙开发,发现上面居然没有btmon,hciattach,hcitool等蓝牙调试工具,无奈之下,只好移植bluez协议栈到目标嵌入式平台,建议移植5.18版本(最新的5.54版本居然hcitool等工具不是默认编译的,需要修改Makefile才可以)。 看到很多讲解移植过程的文章都是需要积分的,觉得写一篇免积分的文章还是有些意义的,欢迎同行来交流。 移植环境:Linux ubuntu 目标平台:sigmastar 星宸科技 配置交叉编译工具链:export PATH=$PATH:

2964

Codex 100个真实案例 - 用AI做在线考试系统(自动组卷+防作弊)

本案例使用 Codex 从零搭建一个功能完整的在线考试系统。涵盖题库管理(单选/多选/判断/填空)、智能随机组卷、考试倒计时、自动判分、成绩统计分析、以及多维度防作弊机制(切屏检测、禁止复制粘贴、IP限制等)。前端使用 Vue 3 + Element Plus 构建考试界面,后端使用 Node.js + Express + MySQL 提供 API 服务。全程用自然语言驱动 Codex 完成开发,最终交付一个可直接部署的在线考试平台。

yueyeguzhuo的专栏 81

CORBA概述

CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程 序体系规范。或者说 CORBA体系结构是OMG为解决分布式处理环境(DCE)中,硬件和软件系统的互连而提出的一种解决方案。 OMG:Object Management Group,对象管理组织。是一个国际化的、开放成员的、非盈利性的计算机行业标准协会,该协会成立于1989年,其职责是为应用开发提供一个公共框架,制订工业指南和对象管理规范,加快

随风飘雁 5924

【光伏风电功率预测】偏差考核每月少几十万:STL-VMD + Informer-LSTM 在某基地的落地案例

摘要:某风光一体化基地通过STL-VMD二次分解与Informer-LSTM并行残差模型,在不推翻现有预测系统的情况下,将风光功率预测的综合nRMSE降低了1.2-1.5个百分点。该方案通过分解预测误差为多个子序列,并采用不同模型处理各频段特征,显著改善了关键时段的预测精度。实施后,风电nRMSE从9.0%降至7.6%,光伏从10.2%降至8.8%,每月减少偏差考核费用30-50万元。项目经验表明,数据质量优化、参数调优及与业务目标对齐是关键成功因素,该技术路线具有可复制性,为风光基地预测精度提升提供了有效

专注AI大模型,软件混淆,授权 265

CORBA规范和CORBA中间件&CORBA中间件的开发过程

CORBA规范和CORBA中间件 本篇博客我们介绍一种流行的集成中间件:基于OMG的CORBA中间件以及CORBA规范。 一、OMG:对象管理组织,该组织发布了最有影响的两套规范,一个是UML统一建模语言,另一个就是CORBA规范。OMG的技术规范主要用来支持分布式、异构环境的软件开发项目。这些规范覆盖了从分析、设计到编码、部署、运行和管理的整个软件的开发过程。 二、OMA:对象体系结构,描...

BRAVE MAN的博客 2960

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

基于CORBA的分布式程序设计(十一)

第八章  附录8.1  CORBA 版本软件市场中能够见到的CORBA中间件产品很多,但基于不同公司的产品战略以及研发方向,各个产品在服务性能、对高级语言的支持和所依赖的系统平台方面有很大区别。以下是对主要产品在几方面进行了分析(参见表1),可供参考。主要中间件产品 8.2目前最新的CORBA产品:MICO、ORBacus、ORBacus 3、The ACE ORB (

helloworlder的专栏 2460

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

CORBA Programming with TAO - 3.IDL Data Type(数据类型与Mapping)

CORBA Programming with TAO - 3.IDL Data Type(数据类型与Mapping)摘要:简要介绍TAO支持的IDL数据类型及其C++ Mapping关系。一、简单基本数据类型(Simple Basic Types)TAO支持以下简单基本数据类型(%TAO_ROOT%/tao/Basic_Types.h):

大卫的思维空间 6682

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

CORBA ORB

对象请求代理(ORB)        对象请求代理(Object Request Broker , ORB)是对象总线,它可以让对象透明的向本地或远程的其他对象发送请求或从那里接受响应。ORB使对象可以在运行时相互发现和调用对方的服务。        ORB是对象间建立客户/服务器关系的中间件。通过使用ORB,一个客户对象可以透明的调用服务器对象的方法。客户/服务器的角色仅仅是用于协调两个对象之间

幽客独往 8006

IDL文件

<br /><br />IDL是什么详细介绍:<br />IDL(Interface Definition Language)即接口定义语言,是CORBA规范的一部分,是跨平台开发的基础。IDL提供一套通用的数据类型,并以这些数据类型来定义更为复杂的数据类型。可变化 IDL 基本类型 整数类型 OMG IDL 摒弃int 类型在不同平台上取值范围不同带来的多义性的问题。常数定义常数可以是整数、字符、浮点数、字符串、Boolean、octet 或枚举型,不能是 any 类型或用户定义的类型。OMG IDL数组

mcy478643968的专栏 2929

RMI、CORBA、IIOP简单实例

 RMI、CORBA、IIOP简单实例--2. CORBA --------------------------------------------------------------------------------RMI、CORBA、IIOP简单实例--2. CORBA CORBA基本介绍CORBA(公用对象请求代理体系)是OMG(对象管理组织)于1991年提出的基于对象技术的分布计

gotohbu的专栏 1335

使用 CORBA 和 Java IDL

http://www.360doc.com/content/12/0328/15/1369263_198618797.shtml 使用 CORBA 和 Java IDL   关于 CORBA 关于 Java IDL Nutshell 中的 CORBA 概念 定义并实现 CORBA 对象 客户机实现 Java IDL 瞬态名字服务器   关于 CORBA CORBA

走马观花 2121

CORBA技术及实例

CORBA是一种规范,它定义了分布式对象如何实现互操作。在WorldWideWeb盛行之前,特别是Java编程语言风靡之前,C++开发者基本将CORBA作为其高端分布式对象的解决方案。 实际的CORBA规范归对象管理组(ObjeotManagementGroup)管辖,这是一家由700多家公司组成的开放的研讨会,其工作是制订对象计算的开放标准。CORBA对象可以用任何一种CORBA软件开发商所支持

Johnny的专栏 4561
上一篇: 在windows环境中编译ACE/TAO/CIAO注意事项
下一篇: 看到操作系统MINIX 3,觉得有些魅力,与大家共享
滴水禅师
博客等级 码龄22年 0粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值