我的问题是针对熟悉 COM 的开发人员。我目前正在写我的大学论文,其中部分是关于 Microsoft COM 的。
- 除了遗留代码之外,COM 今天仍然用于其他目的吗
- 每个人都说 COM 已经过时了。为什么新的 Windows 运行时是“增强的”基于 COM 的 API?“增强”这个词是什么意思
- 与 .NET 相比,COM 是否有任何显着的优势,反之亦然
- 任何可以了解更多关于 COM 和 .NET 互操作以及它是如何工作的建议的建议
请尽可能用事实支持你的回答!谢谢你。
是的。
COM 仍然是 Windows 工作方式的核心。只要 C 风格的 api 不够用,COM 就是公开对象模型的下一步。是的,商店应用程序是 COM 服务器。
COM 是本机代码,它增加的开销很少,并且几乎可以从任何移植到 Windows 的语言中使用。
访问 amazon.com 搜索书籍,阅读评论。
不必了解 COM 即可编写在 Windows 上运行的程序。做了很多工作来包装它并使它更友好。存储语言运行时中的语言预测是值得注意的,可见底层 COM 代码的痕迹非常少。将其降级为与学习汇编语言编程相当的状态。
微软为引入语言互操作性而开发的基于组件的模型。要了解 COM,我们首先要了解 COM 概念进入 .Net 时的场景。我们知道,在面向对象的概念中,代码在同一应用程序中的可重用性,但无论如何,如果我想从其他不同语言的应用程序调用任何类的函数,那么这是不可能的。面向对象的另一个缺点是,在软件开发之后,任何类都需要进行任何更改,然后整个应用程序需要重新构建并再次部署到客户端机器上。实际上问题在于,在这种情况下,我们获得了特定应用程序的可重用性,而不是整个应用程序级别。您可以在此处阅读有关 COM 的更多信息:基于组件的模型