版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第九章:组件思想、物件导向分析和设置修订、一、组件概要二、COM思想三、CORBA思想四、EJB思想、基于UML描述的组件软件研究、一、组件概要、面向对象编程的软件复用仅限于程序源代码级别的再利用, 这是一种传统的溶解热:将一个大的plume计程仪程序划分为多个小模块,每个模块保持一定的功能独立性。 确立API方式实现模块间接口。 问题:在API的更新版本问题模组之间提供通讯语言的相容性。 另一方面,组件概要、组件复用作为现实有效的软件开发方法越来越受到重视和研究。 近年来,随着DNA、应用中间件等三层架构和分散对象的兴起,基于可再利用组件的软件架构被赋予了更大的内涵。 因此,在做评估零配件再
2、利用的意义时,不仅要认识到开发周期的缩短、软件质量的可靠提高,而且还要认识到零配件的组装方式的开发在系统的维护(例如,版本升级、功能追加删除等)、分散订正等方面非常便利。 由于维护阶段约占软件研发周期总成本的67%,所以组件的再利用对整个软件产业的重要意义是毋庸赘言的。 从维护和分散补正算的观点出发,组件的再利用实现了“即插即用”1、组件概要、最终溶解热:组件软件。 组件化计程仪编程思想同样将巨大的系统划分为许多功能对立的小模块,不是简单的查询密码定径套,而是自给自足的组件,这些个的模块可以在同一机器或不同的网络环境中执行。 一、组件概要、组件软件的特点:组件易于交换能够适应业务需求变化的二进
3、制代码重用有助于并行开发;另一方面,组件概要、组件和信息帧工作:组件和信息帧工作的关联组件Vs . 组件合并frameworksarebasedonspecialization,组件基于are的委派,通用访问器,专用委派。组件“黑匣子”再利用客户知道通用接口对客户接口的影响不大的“主机盒”再利用客户知道保护和通用接口对客户的结构有很大影响,而组件的概要、评价设置批准、拒绝和我们的一般宏命令,以确定方法是否成功: # define succeeded (HR ) (长I unknow )界面定义文件。 local属性禁止生成网络查询密码。 object属性表示定义了COM接口。 uuid属性为接
4、口提供GUID。 unique property指示空指针是有效的残奥参数值。 pointer_defaul属性所有嵌入指针都具有缺省关奥尔特字的指针属性typedefuniqueiunknown * LP unknown; 的双曲馀弦值。 定义cpp_quote (一种将注释写入idl文档的方法)更有趣。 这些个注释存储在*.h和*_i.c文件中。 in表示此残奥仪表是in残奥仪表。 out表示此残奥仪表是iid_is(riid )残奥仪表,此残奥仪表表示需要以前的riid残奥仪表。 注意:所有具有out属性的残奥仪表都必须是指针类型。本地、对象、uuid (00000000-0000-00
5、00-00000000046 )、指针默认值(unique ) CPP _ quote iid _ iunknownandallothersystemiidsareprovidedinuuid.lib ) CPP _ quote (/linkthatlibraryinwithyourproxies clientsandservers ) CPP ULONG Release (); 在所有的示例中,除了称为IUnkown的接口之外,1.3 IUnkown接口需要所有的COM请求(最基本的请求)接口都直接或间接从IUnkown接口继承。 IUnkown接口定义了三种方法: hresultquery
6、interface (基本接口,外部语音* * PPV ); ULONG AddRef (); ULONG Release (); 其中,AddRef和Release ()用于对象引用计数,QueryInterface ()方法用于查询实现的接口。 每次引用COM组件时,都必须调用AddRef ()方法。 当客户端释放COM组件的接口时,必须调用Release ()方法。 这里所述的事情请在下面的例子中好好体验一下。 2 .比较简单的COM,本例共由4个文件组成。 接口. h接口类定义文件Math.h和Math.cpp实现类文件Simple.cpp主函数文件在此处用作COM的客户端。 接口.
7、h文件#接口_ h #定义接口_ h #接口/7 c 8027 ea-a4ed-467 c-b 17 e-1 b 51 c e 74 a f 57静态配置指南id _ id /ca3b 37ea-e44a-49b8- 9729-6e 9222计算机辅助工程84fstaticconstguidiid _ iadvancedmath=0xc a3b 37ea,0 xe44a接口简单公用版3360 虚拟抽象(入口p 1、入口nop2)=0。 虚拟多重(在p 1、在2 )=0。 虚拟分区(不在p 1、不在p2)=0。 接口高级:公共通用3360虚拟函数(intno p1)=0。 虚拟功能接口(接口p1
8、)=0。 #endif,2、相对简单的COM和接口. h文件中的第一个#include包含IUnknown接口定义文件。 然后,定义了两个确保全局唯一标识符全局唯一标识符(guid )在时间和空间上是唯一的接口。 ISmipleMath接口定义了四种方法,而IAdvancedMath接口定义了两种方法。 这些个的所有方法都是虚函数,ISmipleMath和整个IAdvancedMath抽象类用作二进制接口。math.h文件#包含接口. hclasscmath 3360公共安全管理、公共高级安全管理3360 ulongm _ cref私有3360 intcalch 计算机辅助接口(int nop
9、 ); 公共3360/查询接口(refiidriid,void *ppv ); STD方法(长度、地址) (); STD方法(长,发行) (); /isimplemathmethodintadd (intno p 1、int nOp2); 提示符号(提示符号p 1、提示符号2 ); 多重(一点一点,二点一点); 禁止分区(禁止p 1、禁止nop2); /iadvancedmathmethodintfactorial (intnop ); 国际货币基金组织(int nop );math.cpp文件# include接口. h“# include math.hstdmethodimpcmath 3
10、3603360查询接口(refiidriid )”。 其中,dynamic_cast和与编译程序关联的if (riid=iid _ isimplemath ) * PPV=静态成本(this ); 电子邮件地址(riid=iid _高级) * PPV=静态邮件地址(this )。 电子邮件地址(riid=iid _ I unknown ) * PPV=静态邮件地址(this )。 else *ppv=0; 返回e _ no接口; reinterpret_cast(*ppv)-AddRef (); /这是因为引用计数是组件的return S_OK。 stdmethodimp _ (长) cmat
11、h :3360 addref ()返回m _ cref。 stdmethodimp _ (加长) cmath :3360发行版()加长版=- m _ cref /高速缓存区使用临时变量修改的参照计数值,if(res=0) /对象被废弃后参照该对象的数据不正确delete this; 复位复位; 的双曲馀弦值。的双曲馀弦值。 的双曲馀弦值。 的双曲馀弦值。 的双曲馀弦值。 的双曲馀弦值。 的双曲馀弦值。 为了实现类,该类实现了两个接口类: ISmipleMath和IAdvancedMath (当然,也可以只实现一个接口类)。 注: m_cRef用于对象计数。 m_cRef为0的组件对象将被自动删
12、除。simple.cpp文件# include math.h # includeusingnamespacestd int main(int argc、char * argv ) isimplemath * psimplemath=空值。 /声明接口指针IAdvancedMath *pAdvMath=NULL; /创建一个对象斯坦共和国。 暂时以这种方式创建对象斯坦共和国。 COM有一个用于创建对象斯坦共和国的反应历程CMath *pMath=new CMath。 /由查询对象实现的接口isimplemathpmath-query接口(iid _ isimplemath, (void * )此
13、文件相当于客户端查询密码,首先创建CMath对象,然后跟随该对象,其中Math组件的二进制结构图、二进制、COM思想和物件导向组件模型COM根据组件模型进行建构软件组件按照一定的接口模型被组织成组件软件。 中所述情节,对概念设计中的量体执行面积分析。 组件接口方法保证了软件组件之间的通讯。即。 COM除了提供组件间的接口标准外,还引用了物件导向的思想。 在WINDOWS平台上,COM可以是DLL或EXE。 可以在一个组件平台中包含多个COM对象,也可以在一个COM对象中实现多个接口。 第二,COM思想、物件导向组件模型COM将COM对象通常称为COM服务器,以建立COM对象与使用COM对象的客户机之间的C/S模式。 COM的发展经过了DDE、OLE1、VBX、OLE2、DCOM、ACTIVEX和COM。 COM组件软件配置: COM对象、COM接口、COM客户机、COM库(信息帧工作)。 二、COM思想,COM具有的特征二进制特性接口不变继承性:类继承说明继承和实现云
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年鹤壁汽车工程职业学院单招职业技能考试题库附答案详细解析
- 2026江铜国际贸易有限公司招聘2人笔试参考题库及答案解析
- 2026嘉兴市南湖区事业单位招聘17人-统考笔试备考题库及答案解析
- 2026温州市瓯海区事业单位招聘(选调)26人-统考笔试模拟试题及答案解析
- 2026中铁快运股份有限公司招聘高校毕业生99人笔试模拟试题及答案解析
- 2026上海市消防救援局政府专职消防员招聘500人笔试模拟试题及答案解析
- 2026广东潮州城市建设投资集团有限公司及下属公司招聘15人笔试备考题库及答案解析
- 北京市昌平二中学南校区重点名校2026年初三二月联考英语试题含解析
- 2026年徐州市重点名校初三高中毕业生第二次复习统一检测试题英语试题含解析
- 2026届云南省楚雄市重点名校初三下学期网上模拟考试语文试题含解析
- 第四单元应用文写作《说明书》(教学设计)-【中职专用】高二语文上(高教版2023职业模块)
- 急救中心建设标准
- 矿安益学习题库
- 食品微生物学基础课程标准(一)
- 中医风湿痹症课件讲稿
- 配电第一种工作票(10kV线路投运停电填写样本)
- 胸腔镜下肺叶切除术护理查房
- 弘扬雷锋精神-争做美德先锋主题班会课件
- 生命教育与心理健康教育的融合路径研究
- 摄影服务照片版权转让协议
- 《心脏急危重症诊治》课件
评论
0/150
提交评论