《COM技术内幕》重读笔记1--第一章 组件

1、COM 本身与编程语言无关,并不是大的API集合,它实际上像结构化编程以及面向对象编程方法那样是一种编程方法、一种编程思想、是说明如何建立可动态互变组件的规范。

2、《COM技术内幕》采用传统C++来具体演示COM技术。

3、书中类型转换采用C++的:static_cast、dynamic_cast、reinterpret_cast、const_cast。

4、书中编码风格(MFC编码风格)

前缀含义示例
C CConnectionPoint
I接口IConnectionPoint
m_成员变量BOOL m_bSplleyBear
s_静态成员变量static int s_iBears
g_全局变量int g_Bears[100]

匈牙利命名规范
前缀含义示例
p指针int *pCount
pI指向接口的指针Ibear *pIBear
b布尔型BOOL bBear
I整数int iNumberOfBears
dwDWORDDWORD dwBear
c计数DWORD cRefs
sz字符数组char szName[]="Fuzzy"
wsz宽字符数组wchar_t wszName[]=L"Fuzzy"
   

一、组件的优点:

1、可以实现应用程序的定制。

2、组件库,可以构建大型组件库供后面开发软件使用。

3、分布式组件,组件不再局限于本地。

二、对组件的要求:

组件的优点直接来源于可以动态的将它们插入或者卸出应用程序。

1、必须支持动态链接。

2、必须实现信息封装,与语言无关,与版本无关。

三、COM组件

1、COM组件是以Win32动态链接库DLLs或者可执行文件EXEs的形式发布的可执行二进制代码组成的。

2、COM组件是动态链接的。COM使用DLL将组件动态链接起来,但是动态链接本身并不能满足COM组件构架的需求,为满足这些需求组件必须是封装的。

3、不能将COM和DLL相提并论,COM只是使用了DLL来提供动态链接的能力。《COM技术内幕》的作者对DLL的应用除了支持COM外,其他地方一般不会用DLL。

四、COM组件库

COM当然并不是一套API,但是它也需要具体的实现,在Window环境中微软提供了一个被称作COM库(COM Library)的API组,它提供对所有客户以及组件都非常有用的组件管理服务。在非Window环境中实现这批API也并不难。此COM库可以保证对所有组件的大多数重要的操作都可以按相同的方式完成。此COM库可以节省大量开发时间,避免大量重复性编码工作。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值