软件组件 百科内容来自于: 百度百科

定义:

为自包含的、可编程的、可重用的、与语言无关的软件单元,软件组件可以很容易被用于组装应用程序中。

优点:

位置透明性:
无论组件位于什么位置,组件的调用者应该能够使用同样的方法获取组件信息(定位)并调用组件,而与组件的位置无关。
使用接口技术
组件的接口和组件的实现相分离,甚至调用者使用的接口和组件并不在同一位置,调用者只需要知道接口并访问接口就可以使用组件。接口相对固定,组件功能和实现的变化不应该引起接口的变化,而且接口是二进制协议,与语言无关。
自描述性:
组件应该是自描述的,调用者应该能够使用统一的方法获取组件的接口信息,接口信息与语言无关
可重用性:
组件应该能够以二进制方式方便地被重用者重用,与语言无关。
安全性:
组件应该是安全的,不应该允许任何的未授权使用、非法使用或者恶意使用。

COM技术与普通面向对象技术的比较

COM(COM+)技术
普通面向对象技术
创建对象(组件)
由类厂自创建,使用者只用通知类厂。
使用者创建
使用对象(组件)
只通过指针的方式使用组件的接口
直接使用类的对象
删除对象(组件)
减少引用计数,组件自身删除。
使用者删除
对象(组件)的定位和描述
注册后的组件,COM环境提供的函数可以统一地定位组件。组件通过类型库自描述。
对象类(或者类库)必须和调用者在一起。必须提供语言相关的头文件或者单元。
重用
通过包容和聚合重用(二进制重用)
通过继承重用(源代码重用)
安全性
COM+有安全性引擎
自己实现安全性
结果
位置透明,接口固定,自描述,重用方便,安全。
无COM的这些优点

几种现代软件组件和技术的比较

COM/COM+ 1.0
.NET Assembly
(COM+ 2.0)
Web Service
位置透明
COM环境完成组件定位,通过对接口的列集(Marshal)实现位置透明
.NET环境完成Assembly定位,通过通道(实际上还是列集)实现位置透明
UDDI协议完成Web Service定位,通过HTTP/SOAP/XML协议实现位置透明
接口技术
使用COM接口
使用.NET接口或者属性/方法
使用Web方法
自描述性
使用类型库
使用元数据(Metadata)
使用WSDL
可重用性
可二进制重用
可二进制重用
可二进制重用
安全性
有安全性引擎
有安全性引擎
有安全性引擎
JavaBean是一个可重复使用的软件组件
还有其他组件欢迎添加
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定