聊聊“学习MFC还有用吗?”解决方法
聊聊“学习MFC还有用吗?”
声明下,我对mfc是有很深的感情。
但是,我认为新手学习WPF或许更好点。有3点:
1)大家都知道最近几年Motorola,Nokia,Kodak等等都没落了。 原因有很多,其中有一点应该是当时老技术还能继续获取高额利润,对新技术投入不足。放到职场上, VC现在是还有好多行业在用,但是这些行业的代码大部分是维护了好多年的代码,并且VC自己的发展也没落了,完全没有当年VC6一统天下的气势了。现在学习VC,可能有饭吃,但过个4,5年你又要学习新语言了,如果有VC好多年经验,转其他行业是好转,但是我们自己的职业生涯能有几个5年? 如果用这5年和后面发展都专注一门新语言岂不是更好.行业里基本都是先入的发了。
2)决定码农价值的是市场,要考虑企业需求,同行竞争, 机会等等。如果自己学了一门很炫的技术,没几个企业用,那就是白费,屠龙技不可取。如果同一个岗位,大家都能做,为什么会给你?平时不光学习语言,还要积累其他软技能。
3)科技企业的衰落期越来越短了,为了适应市场变化,现在企业产品都流行beta。作为码农,我们也应该时时关注市场,学习新技术,为未来转型或者机会做准备。因此新手最好能学习个朝阳语言,或者就算当下选择了MFC, 也应该时时学习新技术,比如WPF, 或者以后的XXX语言。
大家认为呢?
http://blog.****.net/muzizongheng/article/details/16880715
------解决方案--------------------

------解决方案--------------------
感觉还是VB6好使,快速的界面开发(虽然没有那么绚丽),有限的数据类型(C++任何人都可以弄出一堆类型来,就一个字串Cstring,BSTR _bstr_t string 。。。),完善的com支持,VB6写Com部件组件比VC快上N倍,有丰富的第三方com组件可用,完全可以结束的运行速度和代码大小,快速开发..................
只可惜不支持多线程,不支持继承
------解决方案--------------------
我觉得咱们可以聊聊JAVA,某次看视频,说到JAVA的未来,里面提及到JAVA需要大功率的运算负荷,所以现在安卓手机的电池不抗用,玩游戏一会就没电了,本着绿色的世界主题,JAVA可能要慢慢退出历史的舞台!
不知道大家怎么看?
------解决方案--------------------
真心舍不得放弃MFC呢,现在工控方面应该还用的比较多吧。到底转向哪里,什么路子才是我们MFC码荣的方向,我这种井底之蛙的人看不见爆点,坐等大神们分析~~~
------解决方案--------------------
ATL和com呢。。。
MFC也学了几年了,从开始的实习期宁愿辞了也不愿从MFC转android到现在的有奶就是娘,个人不太愿意业余时间学期其他语言的框架,比较倾向windows下C++,所以宁愿去学些相对来说没那么有前途的,甚至比较难的东西,比如ATL/COM,设计模式,重构这些有可能成屠龙技的玩意儿。请大神指点下
------解决方案--------------------
事与愿违, vc收入好低
------解决方案--------------------

KAO,木子是来踢馆的吗?
------解决方案--------------------
我一路紧赶慢赶还是落后了,2005年左右我开始用Delphi做开发,2008年转型MFC,可能我的行业有点窄,只在工控方面。忽然听说这些都过时了,感觉好悲催!真想学习WPF,但是好像没有时间,唉...
------解决方案--------------------
为什么那么多搞MFC的不愿意多学一点东西呢?能够流行起来的技术都是承前启后的,入门难度不大。
------解决方案--------------------
学C++又不是只MFC一个选择,尽管MFC桌面端的份额总在不断被蚕食,尽管我也同样看衰MFC,但是“过不了四五年就会死”这种论断太缺乏事实依据了。
总体来讲,该用什么还是继续用下去,慢慢适应事物的新变化就成了
------解决方案--------------------
晒一下我的语言学习路径:
BASIC -> c ->UNIX下的c++ -> JAVA -> XML -> MFC -> WIN32 -> ATL/COM -> WTL -> IE编程(连带着学习HTML/JS/CSS及一堆JS库) -> JS脚本引擎 -> ASP/PHP -> D3D/GLES -> C# -> WPF -> DSL(语言无关的代码生成技术)
上面是接触和学习的过程,其中除了BASIC/JAVA/C#之外,每一种都花费了很大精力,不敢说通透,至少也是深入了(浅尝辄止不是俺的风格,俺喜欢知其所以然),当然DSL属于正在进行时,但已经基本掌握了其内涵和实质,运用起来逐步开始得心应手。
我发现自己搞过的东西还真不少,语言跨度也非常大,现在仔细想想,语言不存在过时之说,要用谁就用谁,最近做的每一个项目都至少3种语言混用,我快成为语言整合专家了,独此一家,别无分号,请勿模仿。
------解决方案--------------------
我也学了几年mfc,先别说找工作容不容易,个人是越来越觉得mfc不是个好东西。虽然它给你带来了一些方便,但同时也扔了很多垃圾给你。
脑袋好的,学习mfc,可能很快就领会。但深入还需时间。脑袋不好的,就像我,要花很多时间去学习。去理解它的框架。这是一个痛苦的过程。如果mfc只学得一知半解,程序一旦出现莫名的错误,你肯定会一筹莫展。
mfc的学习成本太高了。
所以我的观点是:
1.如果是高手并且深爱着mfc这种框架,那继续吧!(但你们想想,这个东西你们合适,那就意味着值得推荐吗?)
2.如果是初学者,我是不推荐再学习mfc了。非要学的话,也先把win32学好,这是一个基础投资,绝对不能少。否则对mfc的理解也是很辛苦了。
------解决方案--------------------
MFC需要学习吗?
一周就能游刃有余吧!
VC++皮肤控件库实现的一款可自定义皮肤音乐播放器
http://bbs.****.net/topics/390634398
先截图看下效果:



此播放器主要展示此VC++皮肤控件库效果,音乐播放是次要目的,所以目前只做了一种WAV格式。不过没关系,这个格式是无损的,音效好,虽然体积大,但是现在硬盘都几百G了。在网下下载一些ape格式的音乐用千千转换一下就可以了。您也可以用此VC++皮肤控件库实现一个支持多格式的播放器。我目前电脑上听音乐一直用这个,资源占用小,绝对不流氓, 听了很长时间了。关键是可以把背景换成你的女友或者养眼的美女,一边听音乐,一边看美女。
音乐播放器源码的下载地址:
http://download.****.net/detail/htcontrol/5712163
由于这个音乐播放器无法展示全部控件,还专门做了一个展示所有控件用法的工程,里面有详细的文档说明
http://download.****.net/detail/htcontrol/5453249
另外还专门写了一个文档,以图文的形式一步步的介绍使用此VC++皮肤控件库建立工程的详细过程:
http://download.****.net/detail/htcontrol/5708545
------解决方案--------------------
同意楼主的观点。新手确实建议学习最新的WPF之类的技术。
对于已经学习了MFC或热衷的MFC,也不用刻意去转向WPF之类。
MFC迟早有退出市场的一天,WPF也是,只不过可能MFC比WPF更先退出。
不过要注意的是VC和MFC要分开来谈,winSDK开发也属于VC的范畴吧,就目前来看,
只要windows还在,那些windowsAPI还依然会是C语言接口,依然用VC来开发。
系统软件、和硬件驱动紧密联系的软件仍然会使用VC来开发。
总结下来我认为,作为初学者,可以根据自己的兴趣来。如果感兴趣的话,MFC可以学,只是不用花太多的时间钻到里面去,剖析MFC源码什么的就不要搞了。
大致了解MFC,会用即可,需要时再查MFC类库资料。
重视基础的东西,C\C++语言本身、STL甚至BOOST、算法、数据结构、数据库、网络编程等。
这些基本功扎实了,哪怕MFC甚至VC甚至windows淘汰了,都能在其它地方发挥作用。
------解决方案--------------------
MFC也就是一个封装类库的框架而已,不用这个就用别的,有什么大差别吗?
声明下,我对mfc是有很深的感情。
但是,我认为新手学习WPF或许更好点。有3点:
1)大家都知道最近几年Motorola,Nokia,Kodak等等都没落了。 原因有很多,其中有一点应该是当时老技术还能继续获取高额利润,对新技术投入不足。放到职场上, VC现在是还有好多行业在用,但是这些行业的代码大部分是维护了好多年的代码,并且VC自己的发展也没落了,完全没有当年VC6一统天下的气势了。现在学习VC,可能有饭吃,但过个4,5年你又要学习新语言了,如果有VC好多年经验,转其他行业是好转,但是我们自己的职业生涯能有几个5年? 如果用这5年和后面发展都专注一门新语言岂不是更好.行业里基本都是先入的发了。
2)决定码农价值的是市场,要考虑企业需求,同行竞争, 机会等等。如果自己学了一门很炫的技术,没几个企业用,那就是白费,屠龙技不可取。如果同一个岗位,大家都能做,为什么会给你?平时不光学习语言,还要积累其他软技能。
3)科技企业的衰落期越来越短了,为了适应市场变化,现在企业产品都流行beta。作为码农,我们也应该时时关注市场,学习新技术,为未来转型或者机会做准备。因此新手最好能学习个朝阳语言,或者就算当下选择了MFC, 也应该时时学习新技术,比如WPF, 或者以后的XXX语言。
大家认为呢?
http://blog.****.net/muzizongheng/article/details/16880715
MFC,新手语言,wpf,讨论
------解决方案--------------------
------解决方案--------------------
感觉还是VB6好使,快速的界面开发(虽然没有那么绚丽),有限的数据类型(C++任何人都可以弄出一堆类型来,就一个字串Cstring,BSTR _bstr_t string 。。。),完善的com支持,VB6写Com部件组件比VC快上N倍,有丰富的第三方com组件可用,完全可以结束的运行速度和代码大小,快速开发..................
只可惜不支持多线程,不支持继承
------解决方案--------------------
我觉得咱们可以聊聊JAVA,某次看视频,说到JAVA的未来,里面提及到JAVA需要大功率的运算负荷,所以现在安卓手机的电池不抗用,玩游戏一会就没电了,本着绿色的世界主题,JAVA可能要慢慢退出历史的舞台!
不知道大家怎么看?
------解决方案--------------------
真心舍不得放弃MFC呢,现在工控方面应该还用的比较多吧。到底转向哪里,什么路子才是我们MFC码荣的方向,我这种井底之蛙的人看不见爆点,坐等大神们分析~~~
------解决方案--------------------
ATL和com呢。。。
MFC也学了几年了,从开始的实习期宁愿辞了也不愿从MFC转android到现在的有奶就是娘,个人不太愿意业余时间学期其他语言的框架,比较倾向windows下C++,所以宁愿去学些相对来说没那么有前途的,甚至比较难的东西,比如ATL/COM,设计模式,重构这些有可能成屠龙技的玩意儿。请大神指点下
------解决方案--------------------
事与愿违, vc收入好低
------解决方案--------------------
KAO,木子是来踢馆的吗?
------解决方案--------------------
我一路紧赶慢赶还是落后了,2005年左右我开始用Delphi做开发,2008年转型MFC,可能我的行业有点窄,只在工控方面。忽然听说这些都过时了,感觉好悲催!真想学习WPF,但是好像没有时间,唉...
------解决方案--------------------
为什么那么多搞MFC的不愿意多学一点东西呢?能够流行起来的技术都是承前启后的,入门难度不大。
------解决方案--------------------
学C++又不是只MFC一个选择,尽管MFC桌面端的份额总在不断被蚕食,尽管我也同样看衰MFC,但是“过不了四五年就会死”这种论断太缺乏事实依据了。
总体来讲,该用什么还是继续用下去,慢慢适应事物的新变化就成了
------解决方案--------------------
晒一下我的语言学习路径:
BASIC -> c ->UNIX下的c++ -> JAVA -> XML -> MFC -> WIN32 -> ATL/COM -> WTL -> IE编程(连带着学习HTML/JS/CSS及一堆JS库) -> JS脚本引擎 -> ASP/PHP -> D3D/GLES -> C# -> WPF -> DSL(语言无关的代码生成技术)
上面是接触和学习的过程,其中除了BASIC/JAVA/C#之外,每一种都花费了很大精力,不敢说通透,至少也是深入了(浅尝辄止不是俺的风格,俺喜欢知其所以然),当然DSL属于正在进行时,但已经基本掌握了其内涵和实质,运用起来逐步开始得心应手。
我发现自己搞过的东西还真不少,语言跨度也非常大,现在仔细想想,语言不存在过时之说,要用谁就用谁,最近做的每一个项目都至少3种语言混用,我快成为语言整合专家了,独此一家,别无分号,请勿模仿。
------解决方案--------------------
我也学了几年mfc,先别说找工作容不容易,个人是越来越觉得mfc不是个好东西。虽然它给你带来了一些方便,但同时也扔了很多垃圾给你。
脑袋好的,学习mfc,可能很快就领会。但深入还需时间。脑袋不好的,就像我,要花很多时间去学习。去理解它的框架。这是一个痛苦的过程。如果mfc只学得一知半解,程序一旦出现莫名的错误,你肯定会一筹莫展。
mfc的学习成本太高了。
所以我的观点是:
1.如果是高手并且深爱着mfc这种框架,那继续吧!(但你们想想,这个东西你们合适,那就意味着值得推荐吗?)
2.如果是初学者,我是不推荐再学习mfc了。非要学的话,也先把win32学好,这是一个基础投资,绝对不能少。否则对mfc的理解也是很辛苦了。
------解决方案--------------------
MFC需要学习吗?
一周就能游刃有余吧!
VC++皮肤控件库实现的一款可自定义皮肤音乐播放器
http://bbs.****.net/topics/390634398
先截图看下效果:
此播放器主要展示此VC++皮肤控件库效果,音乐播放是次要目的,所以目前只做了一种WAV格式。不过没关系,这个格式是无损的,音效好,虽然体积大,但是现在硬盘都几百G了。在网下下载一些ape格式的音乐用千千转换一下就可以了。您也可以用此VC++皮肤控件库实现一个支持多格式的播放器。我目前电脑上听音乐一直用这个,资源占用小,绝对不流氓, 听了很长时间了。关键是可以把背景换成你的女友或者养眼的美女,一边听音乐,一边看美女。
音乐播放器源码的下载地址:
http://download.****.net/detail/htcontrol/5712163
由于这个音乐播放器无法展示全部控件,还专门做了一个展示所有控件用法的工程,里面有详细的文档说明
http://download.****.net/detail/htcontrol/5453249
另外还专门写了一个文档,以图文的形式一步步的介绍使用此VC++皮肤控件库建立工程的详细过程:
http://download.****.net/detail/htcontrol/5708545
------解决方案--------------------
同意楼主的观点。新手确实建议学习最新的WPF之类的技术。
对于已经学习了MFC或热衷的MFC,也不用刻意去转向WPF之类。
MFC迟早有退出市场的一天,WPF也是,只不过可能MFC比WPF更先退出。
不过要注意的是VC和MFC要分开来谈,winSDK开发也属于VC的范畴吧,就目前来看,
只要windows还在,那些windowsAPI还依然会是C语言接口,依然用VC来开发。
系统软件、和硬件驱动紧密联系的软件仍然会使用VC来开发。
总结下来我认为,作为初学者,可以根据自己的兴趣来。如果感兴趣的话,MFC可以学,只是不用花太多的时间钻到里面去,剖析MFC源码什么的就不要搞了。
大致了解MFC,会用即可,需要时再查MFC类库资料。
重视基础的东西,C\C++语言本身、STL甚至BOOST、算法、数据结构、数据库、网络编程等。
这些基本功扎实了,哪怕MFC甚至VC甚至windows淘汰了,都能在其它地方发挥作用。
------解决方案--------------------
MFC也就是一个封装类库的框架而已,不用这个就用别的,有什么大差别吗?