使用哪种语言创建Windows 8?

时间:2011-06-02 16:34:27

标签: windows user-interface

我看到了Windows 8 demonstration的视频。

所以我在徘徊使用哪种语言来产生这种新外观:C ++或C#?

该UI上是否有WPF运行?

2 个答案:

答案 0 :(得分:9)

Windows是用C,C ++和一些手工调整的汇编语言编写的。由于它不是用.NET编写的原因,请参阅this question

目前尚不清楚在Windows 8中使用哪种语言来开发最新的视觉效果。

答案 1 :(得分:6)

我无法确切地说,因为我不是开发团队的成员,但它几乎当然用C ++编写。然后,由于它不是一个全新的重写,因此必然会有一堆C和汇编代码。这两个遗留代码仍然是为了向后兼容,以及重要的,有效的代码,如自举序列。

至于他们如何实现花哨的UI效果,它们的存在并不意味着某个UI框架正在使用中。您可以在WPF中执行的任何操作都可以在C ++代码的更直接级别上完成。事实上,必须可以这样做,因为WPF只是调用平台API,如DirectDraw等,以完成所有工作。当然,不言而喻,使用像WPF这样的包装器库要容易得多,但并不是绝对必要的。并且有plenty of reasons Windows无法移动到托管代码世界,至少不是现在或现实中的任何时候。

长期以来,Windows Shell团队一直使用自己的专有控件,类名为DIRECTUIHWND。许多程序员使用像Spy ++这样的工具检查操作系统小部件,找到“他们是怎么做到的?”的答案。和reached the same conclusion。我的猜测是他们使用相同的工具集,扩展了一些新的whizbang功能。当然,他们把它全部保留在内部。一旦您公开API供其他开发人员使用,您就会失去对它的所有权,因为您受到API合同的约束,以确保它继续适用于所有未来版本。如果必须确保与用于实现这些功能的shell的内部UI组件向后兼容,那么您在Windows 8中看到的那些根本变化就会困难得多。