想学习Windows编程,有什么建议吗?

想学习Windows编程,有什么建议吗?,windows,mfc,Windows,Mfc,有人告诉我使用MFC,但似乎MFC会死,虽然它还没有。。。 那么,如果我现在想学习windows编程,我应该选择哪一个呢?thx.我鼓励您学习C#,个人认为C是当今windows最好的编程语言之一。如果您真的想学习windows编程,请从Petzold的书开始。您将很好地了解Windows实际上是如何工作的,这在处理更抽象的框架时是非常宝贵的 然后跳到Windows窗体或WPF。MFC不值得这么头痛。如果你打算在windows api级别编程,最好使用Qt之类的工具。学习简单的win32 api

有人告诉我使用MFC,但似乎MFC会死,虽然它还没有。。。
那么,如果我现在想学习windows编程,我应该选择哪一个呢?thx.

我鼓励您学习C#,个人认为C是当今windows最好的编程语言之一。

如果您真的想学习windows编程,请从Petzold的书开始。您将很好地了解Windows实际上是如何工作的,这在处理更抽象的框架时是非常宝贵的


然后跳到Windows窗体或WPF。MFC不值得这么头痛。

如果你打算在windows api级别编程,最好使用Qt之类的工具。

学习简单的win32 api不要在MFC上浪费时间。。。这是我的观点

取决于您想要创建的应用程序的类型?最新的基于表单的编程是WPF。。。这是最新也是最棒的,但Windows窗体编程也是一种选择(在这方面仍有很多优势)


HTH.

我同意安德烈斯的观点,学习C#

另外,您可以考虑使用java。那里有一个庞大的知识库,根据我的经验,它和C#在语法和形式上有很多交叉


如果你正在寻找问题,请考虑或< /P> < P>如果你想进入原始Win32 API(我认为你会学到最多,你的书架必须具备)…《圣经》是一本必备的。。。MFC、ATL、C#Winforms基本上都是真正的API体系结构的包装器,使用漂亮的属性/事件….

取决于,就像IT世界中的一切都取决于您需要什么一样


但C#或Java是一个良好的开端

如果您的目标是学习Windows API,那么MFC是一个不错的起点。它是API的一个非常薄的包装,在大多数情况下几乎是透明的。也许最大的区别在于消息处理机制。在MFC中,使用宏生成消息处理函数表,许多消息会自动从父级重新路由到子级,反之亦然。在一个原始API程序中,您通常会看到一个带有巨大switch语句的消息循环,它都在一个地方处理。

WPF或带C#的WinForms。 有了WPF,您可以创建非常灵活的GUI,WinForms更为传统。
尝试使用Expression Blend创建GUI(WPF)并使用Visual Studio进行编码:)

这取决于您想做什么。你对编程一般来说是新手吗?如果是这样的话,我会建议你读一本好的编程书,或者去上大学,参加CS学位课程

如果您已经知道如何编程,并且只想编写windows程序,那么您有几个选项。你选择哪一个取决于你想做什么以及你的目标受众是谁

Win32 API-您可以获得的最低级别。这是一个老式的C代码,但是你可以写一些小的、快速的、好看的程序。你几乎每件事都得自己做。Win32 API相当复杂,您必须了解细节才能编写出尽可能最好的代码

MFC(微软基金会类)——采用Win32 API并封装在C++类中。它又是老派,但最近从微软升级到了2008年的新功能包,所以它还远没有消亡

NET(C#,VB)-微软推出的全新产品。编写代码和创建程序非常简单。然而,它确实对你隐藏了所有低级的东西,所以你只需要写C#或其他什么,它总是有效的

当然,您可以始终使用Delphi、Qt和WxWidgets编写,但这些只是win32 API的包装


就我个人的选择而言,这取决于我在做什么。在我的工作中,我写C#,因为硬件/软件在我的控制之下。我知道要安装什么版本的框架,有多少RAM,硬盘空间,等等。对于我自己创建的项目,我几乎总是使用MFC。它隐藏了Win32 API的缺点,并给了我C++的力量。我更愿意把所有东西都制作成.net,但我发现没有很多人安装了.net framework,所以我的用户群受到了严重限制。

语言不错,但只是有点“复杂/过载”(太多的语法糖分无法满足我的口味),但微软的IDE是ecxellent!NET库在清理API方面做得很好,但有时了解较低级别的工作方式很有用。是的@Mark,但我认为这可以根据需要完成,只要您觉得有必要这样做。但是,是的,它让你对事情的运作有了一个坚实的理解。