MFC入门书籍
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC入门书籍相关的知识,希望对你有一定的参考价值。
我很想学MFC但是没具体学过学到后面有好多不懂的
希望大家能介绍一本从最基础的MFC开始学起书
要最基础的
随便问下孙鑫的vc++深入详解 与侯捷的深入浅出MFC
哪个好?
《VC++深入详解》和侯捷《深入浅出mfc》都是入门的必看书籍,没有哪个更好,看你更喜欢哪本书的表述方式。其它较好的书籍还有:
1、《windows程序设计》,讲win32 api的,了解了这个再看mfc会容易一点。
2、鸡啄米的《MFC教程》,对比学习,一般的控件基本都会用的。
3、《windows核心编程》,重中之重,要多看几遍。
MFC(英语:Microsoft Foundation Classes)是微软基础类库的简称,微软公司实现的一个c++类库,主要封装了大部分的windows API函数,vc++是微软公司开发的c/c++的集成开发环境,所谓集成开发环境,就是说利用它可以编辑,编译,调试,而不是使用多种工具轮换操作,灵活性较大。
MFC除了是一个类库以外,还是一个框架,在vc++里新建一个MFC的工程,开发环境会自动帮你产生许多文件,同时它使用了mfcxx.dll。xx是版本,它封装了mfc内核,所以你在你的代码看不到原本的SDK编程中的消息循环等等东西,因为MFC框架帮你封装好了,这样你就可以专心的考虑你程序的逻辑,而不是这些每次编程都要重复的东西。
由于是通用框架,没有最好的针对性,当然也就丧失了一些灵活性和效率。但是MFC的封装很浅,所以效率上损失不大。
VC++深入详解主要则重于实际的项目开发,学完后马上就可能用得到。
而深入深入浅出MFC主要针对MFC的底层代码、WINDOWS、消息等这里面说的比较深、比较抽象,很难理解。但是这些学会后其他的书看这就简单了。建议先学VC++深入详解,工作一段时间后再看深入浅出MFC。两本书对于软件开发界或VC++开发界都有“革命”性的作用。如果学通了,其实两本书一样。本回答被提问者采纳 参考技术B 先学原理啦,孙鑫的vc++深入详解,有些application Framewok 核心知识都没书上讲的仔细,
个人觉得深入浅出MFC ,重原理,实例方面,希望看到琳琅满目的范例程序的读者,会大失所望.
学mfc 选<<inside visual C++ >>,不错,在mfc书籍中名列老大哥. 参考技术C Windows程序设计 深入浅出mfc
Windows程序设计:
作为Windows开发人员的必备参考,涵盖基础知识和中高级主题,全面地介绍了Windows程序设计所涉及的细枝末节,旨在帮助读者从高屋建瓴的角度,建立完整的知识体系,为以后的职业生涯奠定良好的基础。全书共3部分23章。第1~12章着重介绍基础知识,第13~18章的主题为图形,第19~23章涉及更多高级主题。
《Windows程序设计(第5版 珍藏版)》适合任何层次的Windows程序员阅读和参考,是帮助他们梳理和建立Windows知识体系的理想读物。
深入浅出MFC:
《深入浅出MFC》分为四大篇。第一篇提出学习MFC程序设计之前的必要基础,包括Windows程序的基本观念以及C++的高阶议题。“学前基础”是相当主观的认定,不过,基于我个人的学习经验以及教学经验,我的挑选应该颇具说服力。第二篇介绍Visual C++整合环境开发工具。本篇只不过是提纲挈领而已,并不企图取代 Visual C++使用手册。然而对于软件使用的老手,此篇或已足以让您掌握Visual C++整合环境。工具的使用虽然谈不上学问,但在视觉化软件开发过程中扮演极重角色,切莫小觑它。 第三篇介绍application framework的观念,以及MFC骨干程序,所谓骨干程序,是指Visual C++的工具AppWizard所产生出来的程序码。当然,AppWizard会根据你的选项做出不同的程序码,我所据以解说的,是大众化选项下的产品。 第四篇以微软公司附于Visual C++光碟片上的一个范例程序Scribble为主轴,一步一步加上新的功能。并在其间深入介绍Runtime Type Information(RTTI)、Dynamic Creation、Persistence(Serialization)、Message Mapping、Command Routing等核心技术。这些技术正是其他书籍最缺乏的部分。此篇之最后数章则脱离Scribble程序,另成一格。 参考技术D 孙鑫的先教你如何做,侯捷的直接告诉你为什么所以先学孙鑫,现学会如何做,然后在看侯捷的,学习原理,两个都比较不错,另外推荐你一本MFC程序设计第二版也不错。。。
C++从入门到进阶的系列书籍推荐
目录
3.1、Effective C++:改善程序与设计的55个具体做法(第3版)(Scott Meyers著)
3.2、More Effective C++:35个改善编程与设计的有效方法(Scott Meyers著)
4.1、Win32多线程程序设计(Jim Beveridge / Robert Wiener)
4.2、Windows核心编程(Jeffrey Richter / Christophe Nasarre)
8.3、设计模式:可复用面向对象软件的基础(Erich Gamma / Richard Helm / Ralph Johnson)
8.4、数据结构与算法分析(Mark Allen Weiss)
要多读书,读好书!很多时候,一本书要多读几遍才好,每次都可能有新的收获!特别在是有一定的工作年限和工作经验之后!读书百遍,其义自见!下面就给大家推荐一下C++从入门到进阶需要读的一些经典书籍。
1、C++入门书籍
C++是在C语言的基础上发展而来的,要学习C++之前需要先学习C语言。有了C语言基础之后再去学习C++。
1.1、C语言程序设计(谭浩强)
该书被公认为学习C语言程序设计的优秀教材,被全国大多数高校选用,是学习C语言的主流用书。本书比较通俗易懂,是初入者必备的书籍。
1.2、C++ Primer中文版(第5版)
本书是学习C++语言的最经典的入门教材,书中详细讲解了C++语言中最基础的语法和概念。最新第5版均全部采用 C++11 标准改写,充分体现了 C++ 语言的重大进展及其全面实践。书中丰富的教学辅助内容、醒目的知识点提示,以及精心组织的编程示范,让这本书在 C++ 领域的权威地位更加不可动摇。无论是初学者入门,或是中、高级程序员提升,本书均为不容置疑的首选。
2、VC++/MFC书籍
有了C++基础之后,可以先从简单的Windows编程学起,在学习的过程中逐步熟悉Visual Studio开发工具的使用。微软MFC UI框架虽然没有多少大型商用项目在用了,但它是经典的UI框架,其可视化的开发框架,也是我们编写很多小型工具软件的首选。
2.1、VC++深入详解(孙鑫)
本书是学习Windows编程的入门经典教材,从实际应用入手,由浅入深、循序渐进地讲述Windows程序内部运行机制、MFC框架、文本、菜单、对话框、文件操作、网络编程、进程间通信、ActiveX控件、动态链接库、HOOK编程等多个主题。
2.2、深入浅出MFC(侯捷)
本书是深入学习MFC编程的经典教材,分为四大篇。第一篇提出学习MFC程序设计之前的必要基础,包括Widnows程序的基本观念以及C++的高阶议题。第二篇介绍Visual C++整合环境开发工具,此篇足以帮助掌握Visual C++整合环境。第三篇介绍application framework的观念,以及MFC骨干程序。第四篇以微软公司附于Visual C++光碟片上的一个范例程序Scribble为主轴,一步一步加上新的功能;并在其间深入介绍Runtime Type Information(RTTI)、Dynamic Creation、Persistence(Serialization)、Message Mapping、Command Routing等核心技术。这些技术正是其他专著最缺乏的部分。
3、C++进阶书籍
在有一定的C++开发经验之后,我们需要更深入地区了解C++特性,进一步提高我们编写C++代码的效率和稳定性。
3.1、Effective C++:改善程序与设计的55个具体做法(第3版)(Scott Meyers著)
有人说C++程序员可以分为两类,读过Effective C++的和没读过的。世界项级C++大师scott Meyers成名之作的确当得起这样的评价。当您读过这本书之后,就获得了迅速提升自己C++功力的一个契机。
3.2、More Effective C++:35个改善编程与设计的有效方法(Scott Meyers著)
本书是梅耶尔大师Effective三部曲之一。继Effective C++之后,推出的“续集”相当于进阶版本。只有深入了解C++编译器如何解释代码,才有可能用C++语言写出健壮的软件。C++的难学,不仅在其广博的语法,语法背后的语义,语义背后的深层思维,深层思维背后的对象模型。
3.3、STL源码剖析(侯捷 )
STL已经广泛地应用于各种C++项目中,通过本书可以详细了解到STL列表的内部实现。本书详细讲解了vector的实现、list的实现、heap的实现、deque的实现、Red Black tree的实现、hash table的实现、set/map的实现;看到各种算法(排序、查找、排列组合、数据移动与复制技术)的实现;甚至还能够看到底层的memory pool和高阶抽象的traits机制的实现。
4、Windows编程书籍
对于从事Windows应用程序开发的人,下面的两本书是经典的Windows编程教材,是深入了解Windows系统特性的必备用书。
4.1、Win32多线程程序设计(Jim Beveridge / Robert Wiener)
全书详细讲解了Windows系统中的多线程编程技术,共分三篇。第一篇包括线程的启动和结束、核心对象、激发和未激发状态的意义、同步机制及其用途;第二篇介绍C runtime函数库和MFC对线程的支持、如何在USER和GDI的限制之下施行对线程等内容;第三篇谈论如何组织一个程序,使它有效支持多线程。
4.2、Windows核心编程(Jeffrey Richter / Christophe Nasarre)
本书是经典的Windows核心编程指南,是Windows开发人员的必备参考用书,就是为深入理解Windows特性打造的。从第1版到第5版,引领着数十万程序员走入Windows开发阵营,培养了大批精英。Windows核心编程(第5版)针对WindowsXP,WindowsVista和WindowsServer2008全面修订。主题广泛,内容丰富,讲解深入而精辟。透过这本Windows编程经典,我们可以在专家的悉心指导下,洞悉Windows编程精华,深入了解高级编程技巧,编写出高性能的Windows应用程序。
5、Linux书籍
Linux系统已经被广泛地应用于各种系统的后台服务器中,大部分后台服务器使用的操作系统都是Linux系统,无论是web服务器还是各种业务服务器。所以作为C++开发人员,有必要去学习Linux相关知识与技能。作为后台服务器的开发及维护人员,掌握Linux系统的常用命令及系统特性、掌握shell编程技术,是必不可少的技能。
5.1、鸟哥的Linux私房菜
本书是网络上知名度较高的Linux入门级的书籍,从Linux系统的起源、文件系统、Linux命令、shell脚本、系统安全、系统特性等多方面内容进行了详细而全面的介绍。本书基本概念的讲解非常细致,深入浅出。各种功能和命令的介绍,都配以大量的实例操作和详尽的解析。本书是初学者学习Linux不可多得的一本入门好书。
5.2、Linux内核源代码情景分析
这本书采取类似于英语教学中行之有效的情景会话的教学方法,全面深入地剖析了Linux最新版本核心源代码,并对Linux核心的独特优点和需要进一步改进的问题作了精辟的评述。上册的内容包括预备知识、存储管理、中断和系统调用、进程和进程调度、文件系统以及传统的Unix进程通讯六章;下册的内容包括设备驱动、多处理器SMP系统结构以及系统引导和初始化。
6、汇编与软件调试书籍
汇编语言最能反映程序运行的本质,在分析和解决C++程序问题时我们经常需要查看C++程序对应的汇编代码去辅助问题的排查,所以掌握一定的汇编语言基础是很有必要的。此外,汇编是逆向工程中必备的语言。
此外,作为C++软件开发人员,需要熟练掌握各种软件调试的技能,掌握排查各类软件问题的工具和方法。
6.1、汇编语言(王爽)
本书是汇编语言学习者的必备宝典。采用了全新的结构对课程的内容进行组织,对知识进行最小化分割,为读者构造了循序渐进的学习线索;在深入本质的层面上对汇编语言进行讲解;对关键环节进行深入的剖析。
6.2、IDA Pro权威指南(Chris Eagle)
IDA Pro(交互式反汇编器专业版)是应用最广泛的静态反汇编工具,我们经常使用IDA反汇编工具去查看二进制文件的汇编代码。IDA在IT领域有着举足轻重的地位,但其文档资料一直都不够完善,在IDA Pro创建者Ilfak的协助下问世的这本书,完美地终结了这一缺憾。Chris的理论被业界公认为是权威且令人信服的,而他的模拟器也是公开发布的IDA插件中最棒的一款。
6.3、软件调试(张银奎)
本书是对软件调试技术在过去50年中所取得成就的全面展示,也是对作者本人在软件设计和系统开发第一线奋战10多年的经验总结。本书理论与实践紧密结合,选取了大量具有代表性和普遍意义的技术细节进行讨论,是学习软件调试技术的宝贵资料,适合每一位希望深刻理解软件和自由驾驭软件的人阅读,特别是从事软件开发、测试、支持的技术人员和有关的研究人员。
6.4、格蠹汇编:软件调试案例集锦(张银奎)
本书重在实践,通过一个个有代表性的真实问题“现身说法”,在软件大背景下介绍调试,通过调试技术解剖软件。本书适合广大程序员、软件测试工程师、软件架构师以及相关专业的高年级学生阅读,也可供信息安全领域的工程师或者研究者参考。
7、网络及TCPIP协议
作为C++程序开发人员,我们开发的软件基本都是基于网络的,所以我们有必要去学习一些基本的网络知识,掌握一些排查网络问题的方法。
7.1、计算机网络(谢希仁)
本书按照网络协议模型(物理层、数据链路层、介质访问控制子层、网络层、传输层和应用层),自下而上系统地介绍了计算机网络的基本原理,并给出了大量实例。在讲述各网络层的同时,还融合进了近年来迅速发展起来的各种网络技术,如Internet、SONET、A DSL、CDMA、WLAN和蓝牙等。另外,针对当前计算机网络的发展现状以及计算机安全的重要性,本书用了一整章的篇幅对计算机安全进行了深入讨论。
7.2、TCP/IP详解(卷1/卷2/卷3)
卷1:协议,详细描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。
卷2:实现,详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。
卷3:TCP事务协议、HTTP、NNTP和UNIX域协议,是“TCP/IP详解系列”的延续。主要内容包括:TCP事务协议,即T/TCP,这是对TCP的扩展,使客户-服务器事务更快、更高效和更可靠;TCP/IP应用,主要是HTTP和NNTP;UNIX域协议,这些协议提供了进程之间通信的一种手段。当客户与服务器进程在同一台主机上时,UNIX域协议通常要比TCP/IP快一倍。
8、设计模式、数据结构与算法
8.1、Boost程序库完全开发指南(罗剑锋)
Boost库是一个可移植、提供源代码的C++库,其中的网络库被很多软件厂商广泛地采用。本书作为Boost库的详细介绍用书,介绍了其中的所有117个库,并且结合C++11标准详细、深入地讲解了其中数十个库,同时实现了若干颇具实用价值的工具类和函数,可帮助读者迅速地理解、掌握Boost的用法及其在实际开发工作中的应用。
8.2、大话设计模式(程杰)
本书是学习设计模式的经典书籍。它的特色是通过小菜与大鸟的趣味问答,在讲解程序的不断重构和演变过程中,把设计模式的学习门槛降低,让初学者可以更加容易地理解——为什么这样设计才是好的?是怎样想到这样设计的?以达到不但授之以“鱼”,还授之以“渔”的目的。引导读者体会设计演变过程中蕴藏的了、智慧。 本书适合编程初学者或希望在面向对象编程上有所提高的开发人员阅读。
8.3、设计模式:可复用面向对象软件的基础(Erich Gamma / Richard Helm / Ralph Johnson)
这本书结合设计实作例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。书中分类描述了一组设计良好、表达清楚的软件设计模式,这些模式在实用环境下特别有用。此书适合大学计算机专业的学生、研究生及相关人员参考。
8.4、数据结构与算法分析(Mark Allen Weiss)
本书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark Allen Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界500余所大学用作教材。在本书中,作者更加精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析。
8.5、算法导论(Thomas H.Cormen)
有别于一般算法类的书籍,本书将严谨性和全面性融为一体,深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。全书各章自成体系,可以作为独立的学习单元;算法以英语和伪代码的形式描述,具备初步程序设计经验的人就能看懂;说明和解释力求浅显易懂,不失深度和数学严谨性。全书选材经典、内容丰富、结构合理、逻辑清晰,对本科生的数据结构课程和研究生的算法课程都是非常实用的教材,在IT专业人员的职业生涯中,本书也是一本案头必备的参考书或工程实践手册。
以上是关于MFC入门书籍的主要内容,如果未能解决你的问题,请参考以下文章
猎豹MFC--书籍推荐:基于对话框的MFC应用程序《VisualC++实例精通》单文档多文档多顶级文档《MFCWindows程序设计》