【发布时间】:2025-11-25 16:25:01
【问题描述】:
我的公司开发了一个长期使用的产品,它使用 Visual C++ 中的 MFC 作为 UI 开发的事实标准。我们的代码库包含大量必须保持可操作的遗留/过时代码。其中一些代码比我更老(最初写于 70 年代后期),我们团队的一些成员仍在使用 Visual Studio 6。
但是,幸运的是,内部得出的结论是,与竞争对手的产品相比,我们的产品看起来有些过时,需要做点什么。
我目前正在开发 UI 的一个新区域,该区域与产品的其他部分完全不同。因此,我有机会在 UI 其余部分的漫长过程开始之前尝试“新”技术堆栈作为一种试验场。
我在业余时间一直在使用 C# 与 Windows 窗体和 .net 框架并享受它,但我有点担心互操作带来的头痛。虽然 UI 的这个特定分支不需要与传统 C++ 代码库进行太多互操作,但我可以预见这将成为未来的一个问题。
另一种方法是继续使用 MFC,但尝试利用 VS2008 附带的新功能包。我想这是最简单的选择,但我担心寿命长而不是利用 .net 的优点......
那么,我该选哪个?我们是一个小团队,所以我的建议很可能会被接受,作为我们未来发展的方向 - 我想把它做好。
MFC 死了吗? C#/Winforms 是前进的方向吗?还有什么我完全想念的吗?非常感谢您的帮助!
【问题讨论】:
-
是的,MFC 已死。 WinForms 正在消亡。在这一点上,前进的道路是 WPF。从 MFC 切换到 WinForms 将大大降低成本,但从 WinForms 转向 WPF 将大大降低成本。对于仍需要支持 Windows 2000 机器或 Windows Mobile 的人来说,WinForms 是一个不错的选择。 DirectX 仍然是 3D 游戏和 CAD 的最佳选择。恕我直言,其他所有人都应该完全跳过 WinForms,直接转向 WPF。
标签: c# c++ winforms mfc user-interface