现在的位置: 首页 > 综合 > 正文

什么是COM对象

2012年02月10日 ⁄ 综合 ⁄ 共 1177字 ⁄ 字号 评论关闭
COM:The Component Object Model 组件对象模型
COM 组 件 是 遵 循COM 规 范 编 写、 以Win32 动 态 链 接 库(DLL) 或 可 执 行 文 件(EXE) 形 式 发
布 的 可 执 行 二 进 制 代 码, 能 够 满 足 对 组 件 架 构 的 所 有 需 求。 遵 循COM 的 规 范 标 准, 组 件
与 应 用、 组 件 与 组 件 之 间 可 以 互 操 作, 极 其 方 便 地 建 立 可 伸 缩 的 应 用 系 统。COM 是 一 种
技 术 标 准, 其 商 业 品 牌 则 称 为ActiveX。

---- 近 几 年 来, 组 件 在 软 件 开 发 中 得 到 了 广 泛 的 应 用, 尤 其 是Windows DNA 将 组 件 应
用 于Internet, 进 行 各 种 事 务 处 理, 显 示 出 了 强 大 的 功 能。 从 组 件 机 制 和 接 口 标 准 方
面 探 讨 组 件 不 是 一 件 轻 松 的 事 情, 我 们 这 里 仅 从 工 程 应 用 的 范 畴 讨 论 组 件 的 开 发 与
使 用 问 题。 组 件 在 应 用 开 发 方 面 具 有 以 下 特 点:

---- 第 一, 组 件 是 与 开 发 工 具 语 言 无 关 的。 开 发 人 员 可 以 根 据 特 定 情 况 选 择 特 定 语
言 工 具 实 现 组 件 的 开 发。 对 于Internet 应 用 而 言, 完 成 事 务 逻 辑 处 理 计 算 任 务 的 组 件
以MS Visual Basic 进 行 开 发 是 首 选 方 案。 其 结 果 是 开 发 迅 速, 调 试 方 便, 编 译 之 后 的
组 件 以 二 进 制 的 形 式 发 布, 可 跨Windows 平 台 使 用, 而 且 源 程 序 代 码 不 会 外 泄, 有 效 地
保 证 了 组 件 开 发 者 的 版 权。

---- 第 二, 通 过 接 口 有 效 保 证 了 组 件 的 复 用 性。 一 个 组 件 具 有 若 干 个 接 口, 每 个 接 口
代 表 组 件 的 某 个 属 性 或 方 法。 其 他 组 件 或 应 用 程 序 可 以 设 置 或 调 用 这 些 属 性 和 方 法
来 进 行 特 定 的 逻 辑 处 理。 组 件 和 应 用 程 序 的 连 接 是 通 过 其 接 口 实 现 的。 负 责 集 成 的 开
发 人 员 无 需 了 解 组 件 功 能 是 如 何 实 现 的, 只 需 简 单 地 创 建 组 件 对 象 并 与 其 接 口 建 立
连 接。 在 保 证 接 口 一 致 性 的 前 提 之 下, 可 以 调 换 组 件、 更 新 版 本, 也 可 以 把 组 件 安 插 在
不 同 的 应 用 系 统 中。

---- 第 三, 组 件 运 行 效 率 高、 便 于 使 用 和 管 理。 因 为 组 件 是 二 进 制 代 码, 运 行 效 率
比ASP 脚 本 高 很 多。 核 心 的 商 务 逻 辑 计 算 任 务 必 须 由 组 件 来 担 纲,ASP 脚 本 只 起 组 装 的
角 色。 而 且 组 件 在 网 络 上 的 位 置 可 被 透 明 分 配, 组 件 和 使 用 它 的 程 序 能 在 同 一 进 程
中、 不 同 进 程 中 或 不 同 机 器 上 运 行。 组 件 之 间 是 相 互 独 立 的,MTS 使 对 组 件 的 管 理 更 加
简 便。 组 件 对 象 通 过 一 个 内 部 引 用 计 数 器 来 管 理 它 自 己 的 生 存 期, 这 个 计 数 器 存 放 任
何 时 候 连 接 到 该 对 象 的 客 户 数。 当 引 用 计 数 变 为0 时, 对 象 可 以 把 自 己 从 内 存 中 释 放
掉。 这 使 程 序 员 不 必 考 虑 与 提 供 可 共 享 资 源 有 关 的 问 题。

---- 对 于 使 用 组 件 的 集 成 开 发 者 而 言, 一 个 组 件 就 是 一 个 接 口 集, 只 有 通 过 接 口 才
能 与 组 件 进 行 通 信; 而 对 于 组 件 来 说, 接 口 是 包 含 一 个 函 数 指 针 数 组 的 内 存 结 构, 每
个 数 组 元 素 的 内 容 是 一 个 由 组 件 所 实 现 的 函 数 地 址。 在 一 个 应 用 程 序 中, 起 决 定 作 用
的 是 组 件 的 接 口 而 不 是 组 件 本 身。 只 要 组 件 的 接 口 保 持 不 变, 组 件 可 以 任 意 升 级 或 更
换, 而 应 用 程 序 不 必 做 任 何 修 改。 接 口 将 特 定 的 行 为 封 装 起 来, 一 方 面 使 客 户 可 以 用
同 样 的 方 式 处 理 不 同 组 件, 一 方 面 同 一 组 件 可 以 在 不 同 的 应 用 中 使 用。 这 些 特 点 决 定
了 组 件 必 然 有 很 好 的 重 用 性。

抱歉!评论已关闭.