| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2655 人关注过本帖, 1 人收藏
标题:【你是如何看待MFC的?】
只看楼主 加入收藏
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
结帖率:98.26%
收藏(1)
已结贴  问题点数:20 回复次数:14 
【你是如何看待MFC的?】
最近在学学MFC,因为以前没有接触过,以前接触的只是c语言版的win32 application,通过几天的学习发现MFC怎么有点罗里罗嗦呢,动不动整个class,然后一个个的继承派生,比如说建立一个win32程序的窗口,如果我们使用c语言来写,窗口类、注册窗口、建立窗口、显示窗口、更新窗口、最后是消息循环,思路比较清晰,就我个人来说还是觉得win32 API来的快,我也不知道微软为什么要推出一个MFC,学到最后只会点来点去,甚至都不知道windows的消息机制了!

不知道你是怎么看的呢?
搜索更多相关主题的帖子: c语言 windows 微软 class 
2011-09-28 22:09
czsbc
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:469
专家分:1700
注 册:2008-12-13
收藏
得分:1 
既然微软发布了这个MFC,自然有他的理由。
而且大型的项目一般都是面向对象设计。
2011-09-28 22:19
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:0 
面向对象的语言有的是,是不是当初微软发布这个以后,自己也觉得太tm的lj了啊!

愿用余生致力编程
2011-09-28 22:26
czsbc
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:469
专家分:1700
注 册:2008-12-13
收藏
得分:1 
微软怎么想的我就不知道了。
没有深入理解MFC,也不敢随便说他的好坏。
2011-09-28 22:28
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:1 
不知道.还没学过..
2011-09-28 22:30
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:2 
有点鸡肋。其实在当今,到了高层的封装应用,很多语言都提供了功能很强的工具包,不必用C。只有在现成封装包有细微瑕疵,无法满足程序独特要求的时候,才会考虑采用低级的C语言实现,达到补充目的,此时又用不着MFC那样的封装,因为需求独特,MFC也未必能够满足,不如直接使用API,到达最贴近系统的底层,获得最大的自由度。所以,我觉得学C到API就够了,写真正应用的软件,不可能完全用C,费力大收效少,划不来。只要所学的C知识,可以补充主要语言的不足,就足够了。

授人以渔,不授人以鱼。
2011-09-28 22:45
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:5 
楼主是不是还没学C++?或者拿C++写C代码?感觉你的思维方式还是过程驱动的。如果只用C语言,那你确实应该用SDK建立程序。
学MFC要先学会面向对象的思考方式。
MFC是整一套程序框架。它不是重写API,而在对象的层面上封装了API。
学MFC的意义一方面是了解并使用它构建你的程序;而对于现在来说,更重要的是学习它构建程序的模式。学它就是在学OOP的世界观。
而我个人认为其中最精彩的部分,就是它如何创新地(在那个年代,它确实是第一个这样做的)使用消息映射来代替传统程序用switch实现的消息路由。
总之,MFC是C++的东西,不是给C用的。

重剑无锋,大巧不工
2011-09-28 23:44
czsbc
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:469
专家分:1700
注 册:2008-12-13
收藏
得分:1 
回复 7楼 beyondyf
同意大侠的观点。
2011-09-29 00:04
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:5 
我也同意beyondyf
我和你差不多。 学了c+api
我想何必用MFC。。。
因为自己也没怎么学c++。
对面向对象也不是很了解。。。
用MFC开发确实显得臃肿。。
但这是我们没有了解面向对象的情况下。。。
面向对象我自己感觉更加适合写大的程序。。。我也没有写过。。自己还停留在c的面向过程中。。。。。
继承绝对是进化。。。就看你怎么继承了吧。。。。
你还是继续学习。当你到达一定境界你就明白了。。。我现在只是体会到了面向对象的魅力。。但不怎么理解。。。呵呵
编程 这条路 要不段学习。。共同努力
收到的鲜花
  • hellovfp2011-09-29 13:55 送鲜花  5朵   附言:还早,你只看到了继承,可惜没有看到的是另 ...

用心做一件事情就这么简单
2011-09-29 13:43
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
收藏
得分:1 
MFC垃圾已经是常识,跟失一样,
微软自己很难整的出优秀的 语言和框架
MFC 是一例,另一个明显的例子是c#,c# 80%的思想借签于Java,
之前还想用 J++侵权 Sun公司的Java,其恶心程度可见一斑。

你winodws消息机制不是很熟悉吗?翻开《windows程序设计基础》前言部分,
看看那 作者是怎么说的:"几乎没有人认为 MFC是一种很好的面向对象的设计模型"
自己都说自己的东西垃圾, 这东西已经垃圾到自己都惭愧的程度。

如果你想学好c++,劝你还是多看看《c++ primer plus》,
如果你想深入MFC,还不如去看看 c#

[ 本帖最后由 BlueGuy 于 2011-9-29 22:23 编辑 ]

我就是真命天子,顺我者生,逆我者死!
2011-09-29 18:55
快速回复:【你是如何看待MFC的?】
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036212 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved