我为什么讨厌MFC?
2007-01-18 23:19
260 查看
喜欢一样事物需要理由么?不需要!那讨厌一件需要理由么?我想,应该需要吧.
"我讨厌MFC!"曾经我对一个同行说过这句话,他说:"你有资格讨厌MFC,因为在wince下,MFC会影响速度".咋一听起来似乎还挺有道理,但再想想,完全是假话.
MFC会影响速度?这句话如果放在两年前,可能是正确的,因为那时候的嵌入式设备CPU速度确实不快.但现在呢?动辄至少就300MHZ的速度,MFC能影响多少效率?何况我做的不是工业级的操控,而是应用级的产品,即使是C#的速度,我也是完全可以接受的----当然,我还是不会用C#去写代码,虽然速度属于我可接受范围,但为了运行C#代码而加入的.NET精简类库而导致的OS的体积膨胀,我是无法接受的----本来OS才9M,加一个.NET精简框架至少让其再臃肿3M!
讨厌总该有理由,我不如回想什么时候让我感到MFC的无奈.
一年前之久,写个计算器,需要有普通型和科学性两种界面.界面不同,但里面的计算过程是相同的.所以,我就想两个不同的对话框,同用同样的一个消息处理函数,也即同一个.cpp文件.但在MFC里,我实在找不到有任何方法让我的想法赋之于实践.无奈,我只好再重建一个CPP文件,然后把原来的处理代码COPY->PASTE.
半年之后,产品打算不使用explorer,而是自己做UI.只是发现去掉Explorer之后,一个非常简单,默认生成的对话框程序,居然会出错!实在无法想象,为什么在WINCE下,MFC需要explorer才能正常工作!无奈,只好用SDK写UI.
两个月之前,想实验一个极度无聊加变态的想法,就是让程序需要调用N次PostQuitMessage()才能退出程序.只是我在生成的程序架构里,我根本没找到那个熟悉的TranslateMessage().无奈,我只好又拿起API.
所以,现在,写代码,已经习惯不去碰MFC,因为怕到时候有什么稀奇古怪的想法,MFC里我无法实现.
还有一点就是,MFC里自动生成的代码,我实在看不懂,却偏偏让它在我程序里呆着----不爽!
说白了,其实我讨厌MFC的理由真的太简单了,仅仅是因为自己的能力不足,无法驾奴MFC.只是,这真的可以成为我讨厌MFC的理由么?
"我讨厌MFC!"曾经我对一个同行说过这句话,他说:"你有资格讨厌MFC,因为在wince下,MFC会影响速度".咋一听起来似乎还挺有道理,但再想想,完全是假话.
MFC会影响速度?这句话如果放在两年前,可能是正确的,因为那时候的嵌入式设备CPU速度确实不快.但现在呢?动辄至少就300MHZ的速度,MFC能影响多少效率?何况我做的不是工业级的操控,而是应用级的产品,即使是C#的速度,我也是完全可以接受的----当然,我还是不会用C#去写代码,虽然速度属于我可接受范围,但为了运行C#代码而加入的.NET精简类库而导致的OS的体积膨胀,我是无法接受的----本来OS才9M,加一个.NET精简框架至少让其再臃肿3M!
讨厌总该有理由,我不如回想什么时候让我感到MFC的无奈.
一年前之久,写个计算器,需要有普通型和科学性两种界面.界面不同,但里面的计算过程是相同的.所以,我就想两个不同的对话框,同用同样的一个消息处理函数,也即同一个.cpp文件.但在MFC里,我实在找不到有任何方法让我的想法赋之于实践.无奈,我只好再重建一个CPP文件,然后把原来的处理代码COPY->PASTE.
半年之后,产品打算不使用explorer,而是自己做UI.只是发现去掉Explorer之后,一个非常简单,默认生成的对话框程序,居然会出错!实在无法想象,为什么在WINCE下,MFC需要explorer才能正常工作!无奈,只好用SDK写UI.
两个月之前,想实验一个极度无聊加变态的想法,就是让程序需要调用N次PostQuitMessage()才能退出程序.只是我在生成的程序架构里,我根本没找到那个熟悉的TranslateMessage().无奈,我只好又拿起API.
所以,现在,写代码,已经习惯不去碰MFC,因为怕到时候有什么稀奇古怪的想法,MFC里我无法实现.
还有一点就是,MFC里自动生成的代码,我实在看不懂,却偏偏让它在我程序里呆着----不爽!
说白了,其实我讨厌MFC的理由真的太简单了,仅仅是因为自己的能力不足,无法驾奴MFC.只是,这真的可以成为我讨厌MFC的理由么?
相关文章推荐
- 我为什么讨厌MFC?
- 为什么很多人不喜欢做程序员?甚至讨厌程序员?
- 为什么说MFC是垃圾
- 为什么学习MFC前先学习API?(略译)
- 为什么MFC中有些函数要加一句调用自身的代码?
- 我为什么讨厌框架
- stdafx.h、stdafx.cpp是干什么用的?为什么我的每一个cpp文件都必须包含stdafx.h? Windows和MFC的include文件都非常大,即使有一个快速的处理程序,编
- 为什么mfc的入口是InitInstance()而没有WinMain()
- 为什么MFC的窗口程序都是 AfxWndProc
- 为什么用mfc创建的对话框中确定和取消按钮上的字是横着的
- Why I Hate Frameworks(我为什么讨厌框架!)(转)
- [原创] 在MFC中大家都习惯用CStdioFile来处理文本文件,可是为什么CStdioFile不叫CTextFile?
- 我为什么讨厌微信?
- MFC为什么要安装_AfxCbtFilterHook钩子函数?
- c++的优点,我为什么要坚持学习c++,学习MFC
- 为什么mfc的入口是InitInstance()而没有WinMain()
- [吐槽]我为什么讨厌C++
- 我为什么讨厌框架
- 为什么使用Qt而不是MFC
- 为什么那么多程序员讨厌敏捷开发