我刚刚完成了我用C ++ / MFC编写的第一个真正的商业应用程序。
应用程序由安装在用户工作站上的代理组成,而工作站又由管理员工作站上的GUI应用程序控制。我出于这些原因选择C ++ / MFC。
现在我想到的是我的第二个应用程序,它将再次包含一个代理和一个代理。 GUI应用程序。由于上述原因,我很高兴与代理继续在同一轨道上,但GUI应用程序将比第一个复杂得多。第一个GUI应用程序需要很长时间才能开发出来,虽然它是新制作的,但它看起来已经过时了。
我应该用.net c#咬一口子弹还是看看像QT这样的东西。
TIA。
答案 0 :(得分:13)
如果您想要快速的结果,请使用.NET WinForms。除了德尔福之外,没有什么能比组装GUI应用程序和填充生命的速度快。即使在已经很好的Qt框架上,C#语言和.NET基类库也将为您带来巨大的生产力提升。如果您坚持使用基本的Windows窗体控件,它甚至可以在Mono上运行。
一旦你习惯了WPF,它的工作效率会更高,但是习惯它会花费比Windows Forms更多的时间。
答案 1 :(得分:6)
.NET C#是GUI应用程序的一个非常好的选择。这很简单,互联网上有很多资源。
我能想到的唯一反对它的是平台兼容性,但是如果你限制自己使用C ++ / MFC,那对你来说应该不是一个问题。
即使你想在一段时间之后再与平台无关,你也可以在Linux上用单独的Gtk(Mono,开源.NET框架)。哎呀,甚至有一个Cocoa(Mac OS X)绑定,我只是不知道它有多成熟。此外,Mono已经在很大程度上支持Windows Forms了......虽然我在C#上的主要经验是在Windows上,但我真的很惊讶我尝试它时的成熟程度。
对于GUI应用程序,您不会后悔使用C#。即使您想要跨平台,当然也不想只针对Windows客户端。
答案 2 :(得分:1)
C#几乎肯定会让你更有效率!
答案 3 :(得分:1)
Delphi。生成独立的Windows可执行文件,可以在Win2K上运行(微软有史以来最好的操作系统 - 这篇文章正在上面写)。唯一的缺点是Object Pascal,但是如果你知道C ++它很容易上手 - 它的设计就是购买设计C#的人。 IDE比使用VS的MFC高出几个数量级。
答案 4 :(得分:1)
我已经完成了所有这些 - 猴子可以使用C#,它是所有拖放接口和公共访问者。我不希望在我最大的敌人身上使用MFC,QT对我来说就像C#一样不直观。使C#看起来很漂亮也很容易。在C#中,改变颜色和闪烁控件等难题是微不足道的。它还具有内置样式。我每天都专业地使用它。我使用C ++的唯一一次是,如果我正在编写一个每微秒计数的服务器。
答案 5 :(得分:1)
第一个问题恰恰是导致使用MFC开发GUI的困难。它是MFC固有的,还是因为你正在学习一些新的东西,并且真的不知道你在做什么?换句话说,如果你今天必须再做一次,难度会有多大比较?
毫无疑问 - MFC是一个旧设计,远远超过它的问题,缺点和设计缺陷。 .NET比较新,但远远超过它在问题,缺点和设计缺陷方面的份额。
除此之外,.NET非常庞大。它的组织结构合理,这有所帮助,但要消化使用它所需的大量信息仍需要很长时间。同样,虽然C#(最明显的例子)是一种非常不错的语言,但学习如何使用它并不是一夜之间的任务。这可能是一个较小的问题:与C ++相比,C#并没有真正的新概念。例如,一个称职的C ++程序员几乎可以很容易地立即读取C#,虽然他可能不会以最佳方式使用它,但也可以立即写出C#位。
答案 6 :(得分:0)
你的第二个应用程序将在哪个平台上运行? 如果它是XP及以上我会建议C#/ WinForms / GDI。
答案 7 :(得分:0)
C#并不难以适应,并且在网上有很多例子,而且很棒的书(Head First一个引起了我的注意,因为你可以编写nethack克隆和其他有趣的项目)。我不得不自己从C ++过渡到C#,它根本不是那么粗糙(事实上它似乎是一个非常简单的过渡),并允许我快速原型。
祝你好运!