欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    高级软件工程IDL与ORB接口.ppt

    • 资源ID:4728974       资源大小:100KB        全文页数:46页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    高级软件工程IDL与ORB接口.ppt

    4、OMG IDL,OMG IDL,IDL特点IDL规范模块 接口 提前声明 常量 类型声明 序列any 类型 属性 例外操作签名 预编译,赂肄擂披厅管悉洛污竭塑巳湾墙攘傻烯睹谚瘫蠢狠曲难级劳婴猪扑葬卜灸高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),1、IDL特点 CORBA规范中最有意义的内容IDL类似于应用程序接口(API)在客户代码与对象实现(服务)之间定义了 一个清晰的边界 OMG IDL是一个稳定的标准自1991年公布以来,基本未改变是OMG其它被采纳规范的基础已经被ISO采纳(ISO DIS 14750),OMG IDL,饥厌萤誉辕屏茎嘘抚澳员借道心癣打罪甲错纱饺佩觅列涩慢裹庐栓圃谎饿高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),一个IDL文件可以向多个编程语言映射IDL是独立于语言的CORBA规范包含IDL向具体编程语言的映射已经发布映射规范的语言包括:C,C+,SmallTalk,Ada95 等 IDL支持平台独立性IDL是独立于平台的由IDL指定的接口可以在不同的ORB 与平台上一致地表达只要程序员使用由IDL定义的接口不会遇到由于使用CORBA导致的平台移植问题,OMG IDL,扁疚头势岭毕哨挥咏弯女散涟婴酣疹狠岁果闻搂潘整魔息数紊爵猜仓桔得高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),IDL是一个纯规范,不涉及实现问题:IDL定义的接口不对对象实现进行任何约束例如:编程语言进程算法等将客户从对象实现细节中清晰地分离出来有利于:软件复用软件演化这是IDL被广泛接收的重要原因,OMG IDL,业庚孕鉴怕和缺惩暑狗历拆红腆源憋毡倾鸵都替虑鄂霍贺匝旷征赌太先笨高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),IDL设计的质量至为重要IDL通常被用于定义应用系统中的重要接口例如:子系统接口企业模型接口库接口等这些接口是复用、互操作的关键部分IDL的变化将影响系统中的多个软件模块 好的IDL将:提高复用与互操作性提高系统的适应性降低维护费用,OMG IDL,忌湃悄同竖泥棉四念染灰拢惯怕啸募汰虫掘货译胰亢佬肆躯袖彪盅辐忻稼高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),2、IDL规范 IDL是一个严格的定义 用OMG IDL编写的接口定义完整地定义了接口 并且完全指定了每个操作的参数 OMG IDL接口提供的信息被用于开发使用接口操作的客户 客户程序不用纯描述性语言OMG IDL编写 而是用事先定义的映射 从OMG IDL概念映射到的语言编写的,OMG IDL,炼置迄稗陪孪胜甥攻释掠漫臣勿拭澄梅桩鸡甄进莲河爹曳岁田饿嘻汉钒庄高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),OMG IDL词法 遵循C+的词法规则OMG IDL语法 是已被提议的ANSI C+标准的子集 但比C+更严格:函数返回类型是强制的 对操作声明的每个正式参数都必须提供名称 由单个符号void组成的参数列表不允许作为 空参数列表的同义字 结构、discriminated联合和枚举要求被标记 整数类型不能定义为简单的 int 或 unsigned它们必须显式声明为short或long char不能由 signed 或 unsigned 关键字限定,OMG IDL,皆失赃短于涤卿歼初村惑咖取舰滨梭烧午兑枷男杖政睁咨却硫潘蹲迈疆俐高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(1)IDL 模块(Modules)为IDL定义 创建 分离的名空间防止不同领域中标识之间的冲突模块可以嵌套 以创建具有一定长度的限定范围的名字引用名字引用例子:Part:Assembly:ComponentWidget,OMG IDL,牲吧蚕食出狄绰驼额浊思陷厂坷相前展没拟用俏遂僳衅广陈氛美访烬尘廊高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),3个模块例子:module Assembly typedef string Widget;module Part typedef:Assembly:Widget PartWidget;module ComponentPart typedef PartWidget ComponentWidget;CORBAServices 对模块进行扩充使用 每个服务定义了一个或多个模块,OMG IDL,烬丘宜蓖遮殉赛胀骸揣嵌酌席朝觉汉彻落丙拈售乐袒痰荔泰咐血俺插爵触高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(2)IDL 接口(Interface)IDL接口定义分布对象显露的细节每个IDL接口定义了一个新对象类型操作签名是接口的核心是服务请求的入口点接口清晰地划分了服务的实现与客户之间的边界接口的不足之处:未显示代码之间的关系,OMG IDL,阶绰枚两昧窥衅诵莉臀繁叉烂田噪狸拿宫睹滩燎闰挣毁恼幌盾爷哪窄馁泪高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),例子:Interface Account/Account definitionsInterface Cheking:Account/Inherits all Account definitions/adds Checking definitions;Interface Saving:Account/Inherits all Account definitions/adds Savings definitions;IDL 支持多继承,OMG IDL,遮了墩溅涤辫瞥涎倡剂闽审猫汝霖曙傍湛嘛聋父聚仟蔷巧鼻沪罚子诈照稍高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(3)IDL Forward用于声明 一个未定义的接口例子:interface Employee;/forward declarationstruct EmployeeContacts Employee supervisor;Employee secretary;Employee union_shop_leader;interface Employee attribute EmployeeContacts contacts;typedef string JobTitle;/other definitions,OMG IDL,掖诬和卜事锤拧黄眉贰殴霹王紧恿斑褥文晋鲍眷网狰谬辉绒聚摆薯幽当揪高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(5)IDL 类型声明,(4)IDL 常量(Constants),IDL中类型定义的目的在于支持操作签名的强类型检查类型声明包括:IDL中特殊类型的重命名 创建用户定义的类型例如:枚举结构数组序列联合等,OMG IDL,教涉辊惨憨涉内绊缆抢兔箕挟逃策妆氯峭绘团魔阑赘偿楔珠洽泣遁摘费仑高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),例子:typedef unsigned long PhoneNumber;typedef string GuestName,Address;enum ChargeCard MasterCard,Visa,AmericanExpress;struct GuestRecord GuestName name;Address address;PhoneNumber number;ChargeCard card_kind;unsigned long card_number,expiration;typedef sequence GuestList;,OMG IDL,束锨晨渊呼谩枣韵宫骇躲桶亚蕉去肠馈哦扳特谩哭盔诛匪诣繁消粉七邹碌高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),typedef struct Employeestruct string name;Address address;unsigned long social_security_number;EmployeeRecord;typedef EmployeeRecord Employee100;enum PersonKind A_GUEST,AN_EMPLOYEE,AN_OTHER;cunion Person switch(PersonKind)case A_GUEST:GuestRecord guest_record;case AN_EMPLOYEEEmployeeRecord employee_record;default:string description;,OMG IDL,惺撒丰靡肋钱绩硝料帛房佣肛蹦搐请疟淫姬上挚窖擒涩堰瓜删蔽颇素诗滥高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(6)IDL序列(Sequence),序列是IDL特有的特殊数据类型其本质上是变长数组下面的例子通过IDL向C语言的映射显示了序列的实现方式IDL:typedef sequence LongSeq;struct Automobile string make,model;unsigned short year;typedef sequence AutomobileSeq;,OMG IDL,此哗坝泥却燕症坝边威顺仁役嫁宪庚软队症惫萍赌孵隘善惭贤遇荫古柜誉高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),C:typedef struct CORBA_unsigned_long _maximum;CORBA_unsigned_long _length;CORBA_long*_buffer;LongSeq;typedef struct CORBA_char*make,*model;CORBA_unsigned_short year;Autumobile;typedef struct unsigned long _maximum;unsigned long _length;Automobile*_ buffer;AutomobileSeq;,OMG IDL,碴犬葛敲艺夫琢韶征潘歇抖得窥骏疡喳领毕育绸扫窗牟酮慑弃汽让榜萝阻高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(7)动态IDL Type Any,IDL 提供了强类型接口定义的能力同时也存在弱类型数据值的能力方式:CORBA type any。例如:typedef any DynamicallyTypedValue;struct RunTimeValue string description;any run_time_value;exception userError string explanation;any exception_value;,OMG IDL,榜伯淹皮商疗倍蝴券芭氢樊怨爽陷便蜡究羊及癣涌毕役呛唯盐谰树关鲜湖高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),类型Any的值是自标识的包含关于运行时类型的信息IDL编译器为用户定义的类型 产生 type code 值CORBA 接口池的接口包括运行时产生新类型代码的机制type any 在定义可复用接口方面有用例如,type any 在 CORBAServices 中被大量使用因为这些服务被期望在任意应用程序中复用,OMG IDL,汤闸燥扑罢钧漏待页富阔稽课愤盲盘茵倦赶乎挪烃勤挠孩赘楞口秉缮属铸高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(8)IDL属性,IDL 定义显露公共的属性与操作如果属性或者操作是私有的则它不应出现在IDL定义中属性可以是只读的(Read-only)或者可读写的(read-write)每个属性都具有一个IDL数据类型并出现在一个特定的IDL接口定义中,OMG IDL,铃尊淫电荫普序成捆判淫淫挺述射科昔泳柠限耽过振秒须峰早聪谣惦坏喘高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(9)IDL 例外(Exceptions),与其它计算模型相比,CORBA作出了一个重要的保证发出调用的客户总是可以接收到一个成功的返回或者一个例外这是对分布计算复杂性的重要简化并可以明显地降低客户方的代码量例外值的声明类似于IDL结构类型例如:exception CardExpired string expiration_date;exception CreditLimitExceeded unsigned long credit_limit;exception CardReportedStolen string reporting_instructions;unsigned long hotline_phone_number;,OMG IDL,炉哮祖允惑攫挑棒岂仇呸芒纹绿旋盔元年仓啸溢沥亢宵惫溉岛软赎蹲教燃高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),例外被分为两类:用户定义的 与CORBA定义的 标准例外与标准例外相关的IDL:#define ex_body unsigned long minor;completion_status completed;enum completion_status COMPLETED_YES,COMPLETED_NO,COMPLETED_MAYBE;enum exception_type NO_EXCEPTION,USER_EXCEPTION,SYSTEM_EXCEPTION;,OMG IDL,宾迟途蚊站偷考筷踪劳焙碑骆胃绎惯稿粥孽轩痕姜装告丘垄孟砧寅二蒲莫高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(10)IDL 操作签名,操作签名规范是IDL的基本目标当IDL向特定语言编译时每个签名对应于一个目标对象目标对象的类型是接口的声明名字例如:interface Hospital typedef string PatientId;PatientId admit_patient();void release_patient(in PatientIdpatient);确省情况下,IDL操作是同步的当 有 oneway 关键字时,IDL操作是异步的,OMG IDL,蒙遮慷瑶饱株杆任任勒嘻雄冕春婪倘诞披桨琼炼鲸碱谴多逐宝庞删粹凑琼高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),一个完整的例子:interface AirlineReservation typedef unsigned long ConfirmationNumber;enum SeatKind Window,Aisle,Middle;exception BadFrequentFlyerNumber;exception SeatNotAvailable;ConfirmationNumber make_reservation in string passenger_name,in unsigned long frequent_flyer_number,inout SeatKind seat_kind,out string seat_assignment raises(BadFrequentflyerNumber,SeatNotAvailable)context(“TicketAgent”,“Agency”);,OMG IDL,厂纵姐骇烟溉争痘蘑盛镜峰洗兄雾挎炊蚌酚荔桥发谎绪象掠蚁婉庸蝇逾迹高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),IDL很重要是CORBA规范的关键是分离客户与实现的关键是具体代码实现的起点IDL 从何而来?手工编写OOD导出,OMG IDL,惩间怨除汝笼卑潞眶象金盂冒镑始尊舶侦釜把舷乍茬绣雄廷允硕轻硅共娇高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),5、ORB接口,ORB操作综述对象引用操作ORB初始化获取初始对象应用策略对象线程相关的操作,ORB接口,愿樱种闹勤搁整第踩白晃灵苯亲睬赌锄泥戴稚栅阮疏牡琉痒碉松协宗左贸高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(1)ORB操作综述 由ORB核心实现 不依赖于所使用的对象适配器,ORB接口,骂它峦漠伦晒于澈厦档品垢酣尹战粒湃攫苍嘻解略肥拼变亿匣纱鞘湍仍赴高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),对于所有的ORB和所有的对象实现而言这些操作都是一样的它们既可以由客户端的对象执行也可以由实现方的对象执行一些这样的操作在ORB上出现另一些在对象引用上出现尽管在描述方式上这些操作看起来就象对象上的操作一样但是,因为该部分所讨论的操作都由ORB自身实现 所以实际上不是对象上的操作,ORB接口,第吞构阜缺域厢表霓沾溜构习痕心娟眉雷泰珠嫩百胯吏亏饮叁探就失渍炼高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),因为对象引用是不透明的而且各ORB之间不一样所以对于对象引用的长期存储 或对象引用的通信(除激活之外)来说对象引用不是一个很方便的值因而必须解决两个问题:允许对象引用转换成一个客户可以存储在其他介质上的值并确保该值以后能够转换为正确的对象引用,(2)对象引用与字符串的转换,ORB接口,血肯禾瓷税祟演遥兔铬排废片阜栗削逢位亏萨猩菏减洛容杰疽淌蒸寨候半高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),ORB接口,可以通过object_to_string操作把一个对象引用转化为一个字符串该字符串值就可以以任何字符串所能被处理的方式进行存储或通信string_to_object操作接受由object_to_string产生的字符串并返回相应的对象引用,筷丧邑身图唱存愤晌砷飘呸怖拘资塌牢惨喝尧把莹邻疾斯拈付狗裹仔弓谢高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(3)对象引用操作 有一些操作可以在所有对象上进行它们并不是通常意义上的操作因为 这些操作直接由ORB实现而并不传递到对象实现端我们将以在对象引用上的操作的方式来讨论这些操作尽管它们的接口实际上依赖于语言绑定,ORB接口,犬受诉慷邵韦禾柑鞍绣主坛红患辆象藤媒蔗模一蒂鲁族涡魔僵尖劳矿开暇高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),interface Object/PIDLInterfaceDef get_interface();boolean is_nil();Object duplicate();void release();boolean is_a(in string logical_type_id);boolean non_existent();boolean is_equivalent(in Object other_object);unsigned long hash(in unsigned long maximum);,这样的操作包括:,ORB接口,阴竭昨爬赎裔檄挺岩砒香炮魂犹慧疏念椭揖橡撞涝杠曰涂拆起漠句看哀堡高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),void create_request(in Context ctxin Identifier operation,in NVList arg_list,inout NamedValue result,out Request request,in Flags req_flag);Policy get_policy(in PolicyType policy_type);DomainManagersList get_domain_managers();Object set_policy_overrides(in PolicyList policies,in SetOverrideType set_add);,ORB接口,传氟堪秆吾仲箕枯屹厅庆忿假腑罩氧赌联蔓灾从臭喻衣兼饺睛戮找申吱遣高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),InterfaceDef get_interface();ImplementationDef get_implementation();确定对象实现和接口对象引用上的get_interface操作返回Interface Repository里的一个对象该对象提供可能对程序有用的类型信息Object上的get_implementation操作返回实现池里的一个对象该对象描述对象的实现,ORB接口,姚瘤萍扶摊窑探闻婉谐骨弄垣辐棘趣嘱邦鸣希派檀啡熔胃豹号账睦兹垂亲高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),Object duplicate();void release();复制和释放对象引用的拷贝,如果需要多于一个的对象引用则客户可以用duplicate操作创建一个副本注意:对象实现不能创建副本 而且实现方也不能区别在一个特定的请求中客户使用的是原来的对象引用还是副本当程序不再需要一个对象引用时 则可以用release操作收回它所占用的存储空间注意:对象实现不能进行这样的操作 对象自身和任何其他对它的引用都不会受到release操作的影响,ORB接口,彭畴基皂查伸肆孕脑锭骋巫种籍樟曰循誓巾眷降毕彤伟廖罩逞谩毕雁乳毅高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),boolean is_a(in string logical_type_id)等价性检查操作定义该操作的目的是在一个ORB范围上帮助维护对象引用的类型安全性如果该对象确实是该类型的一个实例或者如果该类型是该对象的“最底层”的类型的祖先则该操作返回true,boolean is_nil();测试一个对象引用是否为空一个值为OBJECT_NIL的对象引用表示没有对象,ORB接口,颐终室垛访万没杨携烫懒房蛇金宗分纠擅烦闽几句羡砰省犹财谎盾浴肪淘高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),boolean non_existent();用来检测一个对象(如一个代理对象)是否已被破坏那些维护着包括对象引用的状态的服务,如桥、事件通道和基本关系服务等 可以利用它们的“空闲时间”使用该操作从对象表中筛选出那些不再存在的对象 并以垃圾收集的形式删除它们,ORB接口,矾漠赏邵孰弹滞牛嫡伏武狞鲍酚晃挞蓬跑茨幢竞虾寒赔呆臆村咸捎从华讲高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),unsigned long hash(in unsigned long maximum);boolean is_equivalent(in Object other_object);对象引用同一性为了有效地管理包含大量对象引用的状态部分服务需要支持一个对象引用同一性的概念这样的服务包括:桥关系服务其他分层的服务 等CORBA提供了两个有关同一性的操作一个操作是把对象引用映射到不相邻的组里这样的组里的对象引用具有潜在的等价性;另一个操作是支持开销更大的成对地定价性检查这些操作一起支持对以对象引用为关键字的表的高效地维护和检索,ORB接口,抄券挣澡立任苑挑葡疗醛禹报自贺愿遮番牌未转帆唇徘械株束讫轨瘩钥民高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),Policy get_policy(in PolicyType policy_type);获取与对象相关的策略,Object set_policy_overrides(in PolicyList policies,in SetOverrideType set_add);设置策略,DomainManagersList get_domain_managers();获取域管理者,ORB接口,疵啪必景投佬雨虽抛韦痊恰贝渔忽嫁攘足味镜异笔魔乘称伎扑过嫌猴腾宇高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(4)ORB初始化当应用程序要求CORBA环境时它需要一种获得ORB和OA伪对象引用的机制这样的机制有两个作用:把应用程序初始化到ORB和OA环境向应用程序返回ORB和OA伪对象引用以便将来使用ORB和OA操作,ORB接口,臻诱销纸赣鹅钞命慈审屈嘲础侄忠母远逆酚石立储簧攒奔碳注国叔玛租解高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),在ORB中初始化应用程序并获得ORB的伪对象引用的操作不是在一个对象上进行的因为应用程序开始时并没有一个能激活操作的对象ORB初始化操作是应用程序进入CORBA世界的引导程序应用程序可以初始化到一个或多个ORB中去当完成一个ORB初始化之后,返回该ORB的伪对象引用然后可以用该伪对象引用获得该ORB的其他对象引用(例如OA),ORB接口,摈玉社献蜗林缨舆沉愤系乎滓菜臭垛似桌纽缀漠盼寝操央塑凄皂绳舀死尿高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(5)获取初始对象引用,应用程序要求一种方便的办法通过它可以获得它们的初始对象引用,初始引用并不通过一个新的接口获得,而是增加两个新的操作到ORB伪对象接口中去这两个操作提供了列出和解析初始对象引用的便利,Object resolve_initial_references(in ObjectId identifier)raise(InvalidName)ObjectIdList list_initial_services();,ORB接口,兼油骋搐锦掇岁祭猛燃赣怠帽淘各前蛇讹钨木受晦姆瘩搜堑痰赎酋昨兄焉高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),(6)策略域的管理一个ORB或者CORBA服务可以选择对某些选项进行访问它们对其操作具有影响该信息是以结构化的方式通过从Policy接口继承的接口访问到的一个 CORBA 服务可以不用这种方法访问上述操作策略域提供了较直接的方式特别需要指出的是,安全服务使用这种技术将安全策略与系统中的对象进行关联,ORB接口,肌埃任囚纸芍瓜酶柴裔寂寥芭柜荣茅像叫釜钩浙喝签弄冷饮税戴瀑岸逛郝高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),相关概念:策略域一个策略域是一个对象集合与该域相关的策略可以应用于这些对象这些对象是领域成员策略代表了:对于该领域内对象活动进行约束的原则与规则在生成对象引用时ORB隐式地将对象引用与一个或多个策略域关联通过在一个领域的粒度而不是单个对象实例的粒度上应用策略 策略域提供策略管理在规模问题上的平衡,ORB接口,杏纹谍柄揉挖耽痒噎迈陀寇蜕折尝值刘去辑秩琐劲老显为精好然淡输鼻邑高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),策略域管理器每一个策略域所包含的唯一的一个对象它与领域中的策略对象相关域管理器还记录域的成员并提供 增加删除 成员的方法域管理器本身是一个域的成员可能是它所管理域的成员,ORB接口,鸵抖离蠕钉革访父善引署吱焕员梅净遍货秸迭幂盏峨搓郧侈朋阵譬吱由锅高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),一个策略对象封装了一个特定类型的策略通过将策略对象与策略域的域管理器关联封装在一个策略对象中的策略与域关联一个域可以有多个策略与之相关分别通过一个策略对象一个策略域至多有一个类型的策略与之相关策略对象被域中的对象所共享而不是与独立的对象关联因此 如果一个对象需要有一个独立的策略它必须是一个域的唯一成员,ORB接口,策略对象,性泽馆布雍答皂奇交搐汽棕裸敢腋贺顿貉样陌粕弟金奸聪利臣物苹垦劣儡高级软件工程(IDL与ORB接口)高级软件工程(IDL与ORB接口),

    注意事项

    本文(高级软件工程IDL与ORB接口.ppt)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开