.NET是否已使原始COM和DCOM编程冗余?
时间:2020-03-05 18:44:56 来源:igfitidea点击:
.net框架的引入是否使COM和DCOM中的原始编程变得多余了?
(除了使用某些COM +服务外,例如通过System.EnterpriseServices命名空间进行事务管理)
解决方案
回答
还没有,但是从长远来看,它的目标是。显然总会有较低级别的地方,但是据我对Microsoft战略的了解,此举是朝着尽可能多地用托管代码替代的方向。
回答
.NET经过精心设计以替代COM(因此也可以替代DLL Hell),因此,尽管.NET应用程序仍可以访问COM组件,但鼓励所有新开发人员迁移到.NET,除非我们有充分的理由坚持使用COM。 。
回答
尚未,因为操作系统仍处于不受管理状态。
如果MS终于做了他们实验室多年来一直在谈论的事情,并且生产出一个完全托管的OS,那么它将成功。
该操作系统将不会向后兼容。他们将必须首先生成Office,IE等的托管版本。他们将不得不产生一个虚拟机来运行非托管应用程序。
痛苦可能类似于从Mac OS9到OSX的迁移。
回答
COM是MS实际失败的最后一项主要技术。 MS正在继续构建依赖于COM的新API。例如,Vista的新媒体基金会(也是DirectShow的继任者,后者也是基于COM的)是COM API。 Direct3D10也是如此(我假设是D3D11)。我认为它不会很快消失,对于许多Windows编程任务来说,它并不是完全多余的。
回答
我想这取决于我们所说的"原始"。我仍然发现有时需要从.Net类库公开COM API。因为我可以通过COM替换小片段,所以使从某些平台到.Net的迁移过程变得更加容易。