这是一个主观问题.
在进入.NET空间之前,我曾在Visual Basic 6.0中工作.
有一件事我看到有很多事情,需要处理Win32 API.作为Visual Basic 6.0开发人员,有很多限制. .NET修复了一些旧的问题,但是依靠Win32的需求还没有得到处理.
是否有任何时候不需要依靠Win32?
(我猜,只有当.NET在操作系统级别有支持.)
据了解,.NET领域(写入LOB应用程序/网站)和C/C++到目前为止不同.
.NET或其他任何基础架构能否真正使C/C++变得不那么重要?
我期待太多了吗
编辑:看起来不像,在另一个包装上构建包装(并带来新的复杂性)?
解决方法
它不能随时消失,但在Windows中,至少新的项目越来越少使用C/C++.你甚至可以看到微软开始吃自己的狗食的例子.
一个很好的例子是C#编译器.目前,它是用C/C++编写的. C#团队目前正在重新编写纯托管代码.一个很大的原因与.NET中的CAS策略有关.调用非托管代码需要FullTrust,所以编译代码也需要FullTrust.当他们转移到托管代码时,这个限制就消失了.
随着越来越多的开发人员以.NET为开发平台,我们看到微软也是如此.
另一个很好的例子是Visual Studio 2010.他们正在使用WPF和MEF重写大部分的IDE,使其易于扩展.
接下来,看看Silverlight运行时.它完全不依赖(特别是)Win32.它运行在Mac上,以及它在Windows上运行.当Silverlight变得更有能力时,我们可能会发现许多目前依赖Win32的.NET调用不再这样做.
我想我的观点是,至少我们开始看到Windows世界的一些变化.
当然,只要你需要更多的跨平台,C/C++再次变得更有吸引力