评侯捷的<深入浅出MFC>和李久进的<MFC深入浅出>

侯捷的<深入浅出mfc>相信大家都已经很熟悉了,论坛上也有很多介绍,这里我就不多说了。

而李久进的<mfc深入浅出>,听说的人可能就少得多。原因听说是这本书当时没有怎么宣传,而自从1999年第1版后,似乎也没有重印过,现在市面上根本找不到,所以大部分人都不知道。我手里现在恰好有一本,是从图书馆借的。这本书全名为<mfc深入浅出——从mfc设计到mfc编程>李久进编著,华中理工大学出版。此书极佳!

我这本书是1999年9月第一版,印数居然只有5000册。这么好的书只印5000册,而市面上都让一堆破烂玩意充斥着……

这本书在写作目的上和侯捷的那本<深入浅出mfc>很相像。都是具体介绍mfc的原理和mfc的设计的。

看有的帖子说这本书难,这倒没有感觉到。当然,我看这本书的时候已经学完mfc的很多东西了,也看过侯捷那本。不过,这本书确实不大适合入门。而比较适合精通。

和侯捷那本书比起来,这两本书的风格很不一样。侯捷的那书的特点是剖了很多mfc的源代码,喜欢用代码说明问题,包括自己模拟mfc的方面实现一个类似的构架(什么什么仿真),而李久进的那本书不是这样,他用了很多的图表,具体介绍了mfc干很多事的时候的具体过程,比如mfc创建的时候及退出的时候具体的调用函数的过程(具体函数的调用关系)。这觉得这部分极为重要,这也就是我推崇李久进这本书的原因。而侯捷的那本书这部分内容非常少。这想,这可能是由于侯捷觉得,这部分内容不需要单独介绍,大家自己剖代码就可以解决问题。这确实不错,李久进的那本书中的内容如果自己剖mfc的源代码,内容都可以找到。但这是一个非常花工夫的事情,更不要说mfc的实际代码中要考虑各种各样的问题(保护,检查),代码的思路不可能非常清楚,这无疑增加了读代码的难度。和自己花时间一点一点剖mfc代码相比,看看这本只有266页的书无疑有效得多。

从内容上来讲,侯捷的那本<深入浅出mfc>更关心的是mfc的设计,或者说更像是想知道mfc是如何做到它所做到的东西的——从目的上说,是希望在了解了mfc的实现方法以后,自己也做出一个类似的东西来(你看别人的源代码的时候,就是这个目的)。而李久进的那本<mfc深入浅出>更关心的是mfc的使用,看完这本书,当你需要做某件事的时候,你会很清楚mfc是在哪个函数中完成这个工作的,你知道应该重载哪个函数,知道如何实现你的功能。但看完侯捷的那本书,你只是学到了方法,而按照侯捷的方法,你可能还得用半年时间才能剖完相关的代码,学到李久进的那本书中所提到的东西。

我确实非常推崇李久进的<mfc深入浅出>,但这并不意味着我贬低侯捷的那本书。其实,我也非常感谢侯捷的那本书,从这本书中,我学到了一个重要的学习的方法:就是自己追踪mfc的源代码,自己修改mfc的代码,实现自己的功能。这种学习的方法,使用编程工具的方法极其重要。我从侯捷的书中,学到了方法。而在李久进的书中,我学到了内容。但是真正到了你要用的时候,你不可能只用李久进的书中的东西就行了。你实际碰到的问题不会那么单纯,不会容易到你看看某个函数的流程图表就可以的程度。你还是需要自己动手,自己学mfc的实现,自己写代码——而这些东西,正是侯捷的书中可以教给你的。

你是希望要一桶鱼,还是希望学习钓鱼的方法——要一桶鱼可以解当务之急,学习钓鱼的方法却可以让你终身受益。而现在,我们有了两者兼得的方法——李久进的<mfc深入浅出>像是一桶鱼,而侯捷的<深入浅出mfc>就像是钓鱼的方法。看完两本书,两者兼得,何乐而不为呢。:)

这本书现在市面上已经无售了,但还好,这本书有很全的电子版本,从网上可以下载。我刚刚是从这个网址下到的这本书http://www.copathway.com/vchelp/archive.asp?type_id=68&class_id=1&cata_id=14&article_id=680,提醒大家注意,这本书总共14章,最后一章叫做“socket类的设计和实现”。网上常见的一个电子版本是380k左右的chm格式的版本。只有前8章。那个版本我觉得很不好,因为后面还有几章比较重要的。大家下载后要注意是不是全的版本。

好了,说了这么半天,不贫了。我也是看到csdn上另一个帖子http://expert.csdn.net/expert/topic/1144/1144689.xml?temp=.8551905,并今天下载到我找了很久的书,很高兴,发表些议论的。在那个帖子上,还有一些下载的网址,大家可以试试。最后,感谢将书上传的网友(虽然我不知道他是谁),并祝大家都学好mfc。

附:如果哪位网友知道这本书哪里还可以买到,望告知。原价28元,80元之内,我愿买一本。^_^

时间: 2024-12-02 22:12:00

评侯捷的<深入浅出MFC>和李久进的<MFC深入浅出>的相关文章

[问题征集]向资深计算机图书作家侯捷提问

[CSDN 问题征集]日前,台湾著名C++技术专家.资深计算机图书作者侯捷将来大陆为广大技术爱好者做一次简短的培训.趁此良机,CSDN记者将会对侯捷先生进行专访,如果您有相关话题想与侯捷先生探讨,欢迎您在本文末的评论处留言:话题不限,程序人生.C++.业界大势和热点.Windows编程遇到的问题.困惑等等都可以,我们会挑选出一些问题向侯捷先生提出,并回复给您他的回答. 侯捷:两岸著名的IT技术教育者,计算机图书作家.译者.书评人.著有<深入浅出MFC>.<多型与虚拟>.<ST

程序员与编程——[侯捷老师的帖]

  程序员与编程--[侯捷老师的帖] 1.急功近利是大忌 一位读者写信给我,说他非常着急.他一个月挣300元人民币,家里情况又不好.他希望赶快把 VC/MFC 学会,进入 I T 产业挣钱.信写得很长,看着看着,我也不禁为他着急起来. 有许多读者,虽然情况没有那么急迫,燃眉之情却也溢于言表.不外乎都是希望能够尽快把某技术某技术学习起来. 但是哪一样东西哪一样技术是可以快速学成的呢?能够快速学成的技术,人才也就必然易取易得,根据市场供需法则,也就不可能有很好的报酬.所以诸君当有心理准备,门槛高的,

c++-侯捷stl源码剖析红黑树代码问题

问题描述 侯捷stl源码剖析红黑树代码问题 在侯捷的stl源码剖析这本书中,P218,红黑树的数据结构代码中有这样一行代码: typedef simple_alloc rb_tree_node_allocator; ,在编译时会报错,其错误为: error: 'simple_alloc' does not name a type 一直没查找到答案,不知道该怎么修改,还请高手解答

在非MFC工程中,如何使用MFC的CString类?

问题描述 在非MFC工程中,如何使用MFC的CString类? 解决方案 解决方案二:摘的:转非MFC工程使用CString2011-05-1316:10187人阅读评论(0)收藏举报在VS2008下如果建非MFC工程而又使用CString会出现如下错误:1.errorC2065:"CString":未声明的标识符解决方法:将#include<afx.h>添加在程序开始处,或将其放在stdafx.h预编译头中.2.再编译提示:fatalerrorC1189:#error:B

mfc 单文档 切割窗口-MFC 单文档 切割窗口 求解

问题描述 MFC 单文档 切割窗口 求解 先将窗口分成1行2列,再将左边的一列,分成两行,运行时,左边两行显示不出来,需要拖动分割条.找不到原因...... if(m_splitter.CreateStatic(this,1,2)==NULL) return FALSE; if(m_splitter1.CreateStatic(&m_splitter,2,1,WS_CHILD|WS_VISIBLE, m_splitter.IdFromRowCol(0, 0))==NULL) return FAL

mfc最蛋疼问题,error MFC问题,LNK2001: 无法解析的外部符号,纠结一个月了都没解决,求解救~~~~

问题描述 1>checkerView.obj:errorLNK2001:无法解析的外部符号"classAdoSqlmysql"(?mysql@@3VAdoSql@@A)1>C:UsersmooncakeDesktopsmartcheckerDebugchecker.exe:fatalerrorLNK1120:1个无法解析的外部命令1>1>生成失败.先解释下,我用mfc编写了一个图书管理软件,要用ado连接数据库,我参照网上给的方法,建立了一个普通类AdoSql,

mfc中button模拟led灯-MFC中Button模拟LED灯,

问题描述 MFC中Button模拟LED灯, 之前看到别人的帖子,用MFC中的Button模拟LED灯,自己尝试了一下,创建的bmp文件,都是有背景颜色的,不知道如何做到,在Button显示为LED模拟图片的时候,如何没有背景 解决方案 http://blog.csdn.net/lightboat09/article/details/6069710 解决方案二: 那就直接用没有背景颜色的bmp图呗,这是美工的事儿了 解决方案三: opencv模拟button

vs mfc 保存数据到txt-vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊

问题描述 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 解决方案 响应事件 比如你定义一个按钮,当点击这个按钮保存文件 你对这个按钮绑定点击事件函数 在函数里面取得编辑框的内容,然后写入到一个文件里面! 解决方案二: 用GetWindowText来获得编辑框中的内容,用FILE结构体来读写文件就可以 解决方案三: 想要自动保存的话,就加一个判断编辑框内容是否改变的消息处理,如果改变了,那么再写入

mfc 跨对话框控件调用-MFC主次对话框控件调用问题

问题描述 MFC主次对话框控件调用问题 在VS2013中基于MFC的应用程序,假如在对话框A中使用MSComm串口控件,用一个button,弹出一个串口设置对话框B,B中有几个CComboBox用来设置参数,我应该如何初始化这些CComboBox?在B对话框的头文件中利用类向导定义了CComboBox关联的控件变量,初始化应该在B的实现文件中bDlg.cpp还是应该在aDlg.cpp?很急,这里先谢谢了! 解决方案 MFC对话框和控件 解决方案二: 两种都可以. 方法一在aDlg: button