我想知道为什么会选择Com作为他的软件开发“技术”
我的第一个是机器/编程_语言独立性
你的是什么?
答案 0 :(得分:9)
COM是Windows上自动化和IPC的事实上的标准(尽管.Net已经开始转移焦点),因此有些领域你根本没有(或者没有)选择:
在.Net事件发生之前,几乎所有MS应用程序的自动化都是通过COM进行的,而且一些公司也开始使用该列车。
如果您愿意将自己限制在Windows中,DCOM也是一种可靠且经过验证的分布式组件技术。
答案 1 :(得分:2)
COM的主要优势在于它是一种广泛适用的互操作技术。
答案 2 :(得分:0)
正如gf所说,人们用它来实现自动化。此外,Windows的大部分只能作为COM对象访问。 DirectX就是一个例子。
答案 3 :(得分:0)
我的第一个想法是 - 不要!如果你可以远离COM / DCOM。
当然,如果您需要与遗留应用程序集成,您将别无选择,但即使这样,也只能使用COM来跨越托管/非托管边界。
如果旧版兼容性不是问题 - 请保持管理。 .NET拥有COM可以提供的所有功能。并且.NET代码的复杂性和稳定性无法与等效的COM代码进行比较。
我一直在使用Visual Studio集成。最初它是所有COM,但MS慢慢地将其中的各个部分转换为托管。基于MEF的新编辑器框架将所需代码的数量减少了几个数量级。而且没有搞乱注册表。这样的解脱。