现在还值得学习微软基础课程(MFC)吗? [关闭]

2024-01-27

我是微软技术的忠实粉丝。学习了很多 .NET Framework 和 C# 之类的编程语言。但我相信 .NET 应用程序是在 .NET Framework 之上运行的,因此它们的速度有些慢。然后我听说 MFC 是 Windows 开发的包装类,它是商业应用程序开发的标准(我的意思是不是业务级应用程序),所以我想知道现在是否值得学习 MFC?还有其他选择吗?我想开发商业级应用程序感谢您阅读我的问题。


不,我不会学习它 - 我会研究它以深入了解 GUI 类的一些工作方式,以便您对这项古老但重要的技术有更广泛的了解。但我不会把它当作一种想要在未来创建新 GUI 的技术来学习。忘记 MFC 的非 GUI 部分,只有微软技术的忠实粉丝才使用它们,其他人都使用更好的库......

尽管您可以使用它(例如 TortoiseSVN)编写出色的应用程序,但如今使用 Winforms 更加容易,并且可以提供相同的结果。是的,.net 比本机代码慢,但对于 GUI,您通常会受到人类对变化的反应速度的限制,因此“慢”系统仍然没问题,除非它变得太慢以至于明显滞后或反应迟缓。出于这个原因,我会跳过 WPF,因为我知道自己和朋友打来太多支持电话,他们都抱怨 WPF 的性能(网络上也有很多关于 WPF 性能很差的信息)。

还有其他选择,Qt 是一个很棒的 GUI 工具。 wxWidgets 很好,而且还跨平台。如今,人们对 GUI 的普遍态度是它们应该基于 Web,因此最好建议您学习 ASP.NET MVC 4(而不是旧版本),因为今天(明天)似乎有大量需要此技术的工作可能会有所不同!)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

现在还值得学习微软基础课程(MFC)吗? [关闭] 的相关文章

  • UML类图:抽象方法和属性是这样写的吗?

    当我第一次为一个小型 C 项目创建 uml 类图时 我在属性方面遇到了一些麻烦 最后我只是将属性添加为变量 lt
  • 未解决的包含:“cocos2d.h” - Cocos2dx

    当我在 Eclipse 中导入 cocos2dx android 项目时 我的头文件上收到此警告 Unresolved inclusion cocos2d h 为什么是这样 它实际上困扰着我 该项目可以正确编译并运行 但我希望这种情况消失
  • 使闭包捕获的变量变得易失性

    闭包捕获的变量如何与不同线程交互 在下面的示例代码中 我想将totalEvents 声明为易失性的 但C 不允许这样做 是的 我知道这是错误的代码 这只是一个例子 private void WaitFor10Events volatile
  • 什么可以解释托管堆上超过 5,000,000 个 System.WeakReference 实例?

    我一直在针对生产 ASP NET Web 应用程序运行负载测试 并且看到在堆上创建了大量 System WeakReference 在大约 15 分钟内 负载管理堆内存已飙升至大约 3GB 并且我有大约 5 000 000 个对 Syste
  • Newtonsoft JSON PreserveReferences处理自定义等于用法

    我目前在使用 Newtonsoft Json 时遇到一些问题 我想要的很简单 将要序列化的对象与所有属性和子属性进行比较以确保相等 我现在尝试创建自己的 EqualityComparer 但它仅与父对象的属性进行比较 另外 我尝试编写自己的
  • 指针问题(仅在发布版本中)

    不确定如何描述这一点 但我在这里 由于某种原因 当尝试创建我的游戏的发布版本进行测试时 它的敌人创建方面不起作用 Enemies e level1 3 e level1 0 Enemies sdlLib 500 2 3 128 250 32
  • 获取没有非标准端口的原始 url (C#)

    第一个问题 环境 MVC C AppHarbor Problem 我正在调用 openid 提供商 并根据域生成绝对回调 url 在我的本地机器上 如果我点击的话 效果很好http localhost 12345 login Request
  • 将目录压缩为单个文件的方法有哪些

    不知道怎么问 所以我会解释一下情况 我需要存储一些压缩文件 最初的想法是创建一个文件夹并存储所需数量的压缩文件 并创建一个文件来保存有关每个压缩文件的数据 但是 我不被允许创建许多文件 只能有一个 我决定创建一个压缩文件 其中包含有关进一步
  • Cython 和类的构造函数

    我对 Cython 使用默认构造函数有疑问 我的 C 类 Node 如下 Node h class Node public Node std cerr lt lt calling no arg constructor lt lt std e
  • WPF TabControl,用C#代码更改TabItem的背景颜色

    嗨 我认为这是一个初学者的问题 我搜索了所有相关问题 但所有这些都由 xaml 回答 但是 我需要的是后台代码 我有一个 TabControl 我需要设置其项目的背景颜色 我需要在选择 取消选择和悬停时为项目设置不同的颜色 非常感谢你的帮助
  • 如何返回 json 结果并将 unicode 字符转义为 \u1234

    我正在实现一个返回 json 结果的方法 例如 public JsonResult MethodName Guid key var result ApiHelper GetData key Data is stored in db as v
  • 在 ASP.NET Core 3.1 中使用包含“System.Web.HttpContext”的旧项目

    我们有一些用 Net Framework编写的遗留项目 应该由由ASP NET Core3 1编写的API项目使用 问题是这些遗留项目正在使用 System Web HttpContext 您知道它不再存在于 net core 中 现在我们
  • 在数据库中搜索时忽略空文本框

    此代码能够搜索数据并将其加载到DataGridView基于搜索表单文本框中提供的值 如果我将任何文本框留空 则不会有搜索结果 因为 SQL 查询是用 AND 组合的 如何在搜索 从 SQL 查询或 C 代码 时忽略空文本框 private
  • 从路径中获取文件夹名称

    我有一些路c server folderName1 another name something another folder 我如何从那里提取最后一个文件夹名称 我尝试了几件事 但没有成功 我只是不想寻找最后的 然后就去休息了 Thank
  • Qt表格小部件,删除行的按钮

    我有一个 QTableWidget 对于所有行 我将一列的 setCellWidget 设置为按钮 我想将此按钮连接到删除该行的函数 我尝试了这段代码 它不起作用 因为如果我只是单击按钮 我不会将当前行设置为按钮的行 ui gt table
  • 从库中捕获主线程 SynchronizationContext 或 Dispatcher

    我有一个 C 库 希望能够将工作发送 发布到 主 ui 线程 如果存在 该库可供以下人员使用 一个winforms应用程序 本机应用程序 带 UI 控制台应用程序 没有 UI 在库中 我想在初始化期间捕获一些东西 Synchronizati
  • 通过win32检测多个登录用户

    使用标准 win32 api 检测多个用户登录的最佳方法是什么 我对我们的软件产品进行了升级 当多个用户登录时 该产品无法运行 我知道这是应该避免的事情 因为它很烦人 但该产品非常复杂 您必须相信我 当我说确实没有其他解决方案时 谢谢 为了
  • 有没有办法禁用 .NET 标签的“双击复制”功能?

    这真的很烦人 我使用标签作为列表项用户控件的一部分 用户可以单击它来选择列表项 然后双击它来重命名它 但是 如果剪贴板中有名称 双击标签会将其替换为标签文本 我还检查了应用程序中的其他标签 双击它们也会将其复制到剪贴板 我没有在这个程序中编
  • 为什么 C# Math.Ceiling 向下舍入?

    我今天过得很艰难 但有些事情不太对劲 在我的 C 代码中 我有这样的内容 Math Ceiling decimal this TotalRecordCount this PageSize Where int TotalRecordCount
  • Process.Start 阻塞

    我正在调用 Process Start 但它会阻止当前线程 pInfo new ProcessStartInfo C Windows notepad exe Start process mProcess new Process mProce

随机推荐

  • 如何用 Perl 正则表达式替换重叠匹配?

    我想找到所有出现的 BBB 在一个字符串中并将它们替换为 D 例如 我有 ABBBBC 并想要生产 ADBC and ABDC 首先替换第一个BBB 然后替换另一个BBB 在 Perl 中有没有好的方法可以做到这一点 str ABBBBC
  • 我们如何冻结 Google Sheet 的一个单元格

    你能帮我冻结 Google 表格中的单元格吗 e 请参考我添加的图像复选框如果我勾选了该复选框一次 那么它不应该再次取消勾选 或者如果我在单元格中写入一些内容 它将被冻结 在 Google 表格中 无法 冻结 锁定 电子表格所有者编辑复选框
  • ActiveRecord 中的析取

    是否可以使用ActiveRecordnamed scopes 使用 sql 创建一个查询OR条款 当我使用 Model scope1 scope2 生成的查询是这些范围的结合 我回复是因为这是 活动记录分离 的第一个谷歌结果 使用 Rail
  • Noscript 标签、JavaScript 禁用警告和 Google 处罚

    当用户禁用 JavaScript 或使用 Noscript 等脚本阻止插件时 我一直使用 noscript 标签来显示警告 如果 JavaScript 被禁用 网站将无法正常运行 并且用户可能无法在没有警告的情况下弄清楚网站无法运行的原因
  • JavaFx 2 - TableView,返回所选项目

    我想从 TableView 中获取所选项目作为字符串 但它返回整个路径 在上图中 当我单击选择单元格时 我想要得到 Indicator selected is Shannon Entropy 当我得到 Indicator selected
  • 如何在Python中绘制k距离图

    如何在 DBSCAN 中绘制 在 python 中 给定最小点值的距离图 我正在寻找拐点和相应的 epsilon 值 在 sklearn 中 我没有看到任何返回此类距离的方法 我错过了什么吗 您可能想使用 numpy 提供的矩阵运算来加速距
  • 在 Angular 中创建新项目时,npm 抛出错误

    当我尝试使用 Git Bash 控制台使用 ng new 命令创建新的 Angular 项目时发生错误 我之前创建的项目从来没有出现过这个问题 这是调试日志的链接https drive google com open id 10ddECha
  • Metro UI:我正在切换 xaml 但图像未加载

    我有一个多 xaml 地铁应用程序 我想通过单击按钮在 xaml 之间切换 private void Button Click 1 object sender RoutedEventArgs e Window Current Content
  • 计算以零为底的累积和 (cumsum)

    我想修改cumsum功能 我希望将负值更改为 0 并且当有新值时D值不等于 0 然后使用D S 下面的例子 TD lt data frame product rep A 7 data seq as Date 2020 01 01 as Da
  • 缩短 JBoss Seam 应用程序中 REST 服务的路径

    我对 JBoss 和 Seam 还很陌生 我的项目有一个 REST 风格的服务 Path media Name mediaService public class MediaService GET Path test public Resp
  • AngularJS 未检测到 Access-Control-Allow-Origin 标头?

    我正在本地虚拟主机上运行一个角度应用程序 http foo app 8000 http foo app 8000 它正在向另一个本地 VirtualHost 发出请求 http bar app 8000 http bar app 8000
  • iisreset 后应用程序池未启动

    在开始之前 我知道使用 iisreset 被认为是不好的做法 但无论如何都不应该发生这种情况 我们有什么 多台在 Windows Server 2003 R2 64 和 32 位 上安装 IIS6 的计算机 多个 WCF Web 服务 NE
  • iOS 10 中使用自动调整单元格大小的 collectionViewContentSize

    在 iOS 10 之前 我有一个自调整大小的表视图 它仅由 UICollectionView 和使用标准 UICollectionViewFlowLayout 的自调整大小单元格组成 集合视图单元格的大小使用自动布局来调整 为了使表格单元格
  • HTML 下拉菜单自动宽度调整

    我创建了一个下拉菜单 该下拉菜单存在根据所选内容调整大小的问题 我使用以下 stackoverflow 答案作为调整下拉列表大小的灵感 https stackoverflow com a 20091985 3166468 https sta
  • cordova 无法看到 Android 目标

    我尝试为 Android 平台设置 Ionic Cordova 我安装了 JDK Android SDK 等 但正在运行cordova requirements给我 Requirements check results for androi
  • 在拖动时选择编辑文本中的一些文本

    我想在编辑文本中选择一些文本 但我不知道该怎么做 我需要这样的方法 当用户触摸屏幕然后拖动并离开屏幕时 拖动的文本将被选择 我的英语很差 所以不要介意 谢谢 textView EditText findViewById R id textv
  • PHP,从日期获取明天的日期

    我有一个 PHP 日期 格式为2013 01 22我想以相同的格式获取明天的日期 例如2013 01 23 这怎么可能用 PHP 实现呢 Use DateTime http php net manual en book datetime p
  • .Net毛伊岛如何连接

    对不起 我的英语不好 如何将 SQL Server 与 Net Maui 连接 我在网上尝试了很多方法 但都失败了 我尝试导入 Ado net 但显示错误 错误显示 该项目的目标框架不包含实体框架运行时汇编 首先 您应该配置应用程序常量 配
  • 从 CDN 包中删除 Babel(StandAlone) 警告消息

    我们在项目的某些部分使用 React JS CDN 出于质量目的 我们希望向客户提供无警告的代码 我们正在使用以下库 问题是我们在控制台中收到以下警告消息 您
  • 现在还值得学习微软基础课程(MFC)吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我是微软技术的忠实粉丝 学习了很多 NET Framework 和 C 之类的编程语言 但我相信 NET 应用程序是在 NET Framewor