COM 对象是什么意思?

Ser*_*gey 9 terminology com

它是什么?据我了解,这是一种针对某些对象的 Microsoft 特殊技术。但究竟是什么?

dso*_*ano 12

COM 对象基本上是一个实现某些已知接口的黑匣子。它还可以在 Windows 中注册自己,以便程序可以获取它。

例如,假设有一些 interface ICalculator,我编写我的程序来使用它。我现在可以交换任何用任何编程语言编写的对象(因为它是一个二进制接口),它实现了ICalculator. 然后在运行时,我可以为我的用户提供某种选项,以便他们可以选择使用FooCorpCalculator用 Python 编写的COM 对象,或者如果他们需要更快的速度,他们可以选择NinjaCalculator用 C 编写的对象。重点是,我写我的程序依赖于一个接口,而不是一个实现,然后选择使用实现该接口的实际 COM 对象。

当然,还有更多内容,但这可能是一个让您更具体的例子。


Mor*_* T. 3

它基本上是一种用于在 Windows 环境中编写程序的旧技术。它又大又复杂,管理/支持起来并不愉快。.NET 框架是其替代品。

  • 它们可以从.NET 调用,但它们是完全不同的系统。它称为 COM 互操作。您可以在计算机上探索它们 - 在“控制面板”>>“管理工具”>>“组件服务”下。 (3认同)
  • .NET框架中没有使用COM对象吗? (2认同)
  • COM 不会很快消失。它被微软自己的产品广泛使用。因此,我认为你称其“基本上是一项旧技术”有点误导。是的,它是在 90 年代初首次推出的,所以从技术上来说它已经“老”了,因为它已经存在了一段时间,但您需要注意“不要”表明它已过时或过时。 (2认同)