Win32/MFC/COM学习推荐书籍
以前有不少朋友问关于学习各种技术的推荐书籍的问题,这里把我觉得比较好的一些书籍列一下,希望能起到抛砖引玉的作用就好了:)
Win32开发
Programming Windows by Charles Petzold:Charles Petzold的书,Windows编程入门的超经典书籍,很多朋友学习了MFC,可是还是不清楚Windows程序的运作原理,结构和各种API的用法,这本书由浅入深的讲解了用Win32 API编程,特别是和GUI相关的API,强烈推荐!
Windows核心编程 / Programming Application in Microsoft Windows 2009 by Jeffrey Richter:由Windows开发著名大师Jeffrey Richter所著,讲解了Windows编程的一些和系统相关的API的用法,如Unicode,Process,Thread,内存管理,IPC,DLL,Hook等,和上一本书正好是互为补充。必读!
Win32环境汇编语言程序设计 by 罗云彬:本书从汇编角度讲解用API编程,除了基本编程之外,还涉及到部分较深入的技术如SEH,Hook,远程线程,自重定位等技术。非常值得一读。
编写安全的代码 / Writing Secure Code / by Michael Howard and David:由Windows安全专家Michael Howard和David编写,Windows安全方面必读的书籍,讲解了Windows中和安全相关的各种概念,API的用法以及大量实用的提高安全型的技巧,常见安全问题的分析等。即使你并非从事安全工作,也应该读这本书,因为安全已经渗透到开发的方方面面。
Programming Server Side Applications for Microsoft Windows 2000 by Jason Clark and Jeffrey Richter: Jeffrey Richter等人写的关于Windows服务器端编程,涉及到Windows服务,异步IO,完成端口,线程池,EventLog等高质量服务器端程序开发所需的各种技术。从事服务器端开发者必读。
Microsoft® Windows® Internals, Fourth Edition: Microsoft Windows Server™ 2003, Windows XP, and Windows 2000 by Mark E. Russinovich and David A. Solomon:Russinovich是Windows编程的专家,是Sys Internal王占的创始人之一,前段时间不久还加入了微软公司成为了微软的Technical Fellow(微软内部工程师的最高职称,相当于副总裁级别),他对Windows内核非常精通。这本书没有直接讲API用法,而是讲解Windows内核的各个部分的运作方式,读过这本书之后会让你对Windows的内部有一个非常深入的了解。强烈推荐!
Debugging Applications for Microsoft .NET & Microsoft Windows, by John Robbins:覆盖Windows平台下用的各种调试方法,API,技巧和工具。对于提高调试水平和对Windows的理解都很有好处,这些技巧也可以被用到程序当中,提高程序的稳定性和可调试性。推荐。
MFC开发
Programming Windows With MFC by Jeff Prosise:Jeff Prosise的书籍向来质量很高,这本书也不例外,讲解了MFC的使用方法,而且作为参考书也很有价值,必读!
MFC Internals: Inside the Microsoft(c) Foundation Class Architecture by by George Shepherd, Scot Wingo和深入浅出MFC by 侯捷:这两本书讲解MFC内部实现的,讲解了MFC中消息的传递方式和MessageMap,对象的序列化,Document/View结构,OLE等内容,非常经典,学习MFC强烈推荐!
COM
COM本质论 / COM essentials, by Don Box:COM技术专家Don Box(原来在DevelopMentor,后来加入微软)所著,主要讲解COM的概念和原理(而并非讲解实际用C++/ATL进行COM编程),特别是前几章用C++模拟COM对理解COM非常有帮助。学习COM必读。
COM原理和应用, by 潘爱明:也是一本学习COM的好书,不仅讲解了原理,也比较实用,涉及内容也有一定广度和深度,可以和上面那本配套着读。
深入解析ATL / ATL Internals, by Brent E. Rector, Chris Sells:讲解ATL的内部实现,如智能指针,CComObject,CComModule, CComCoClass,连接点等。实际上使用ATL的时候经常需要跟进到ATL内部代码去查找问题,或者ATL自己有可能就有问题,因此这本书就显得十分重要。强烈推荐。
COM高手心经 / Effective COM: 50 Ways to Improve Your COM and MTS-based Applications,by Keith Brown, Tim Ewald, Chris Sells, Don Box (编辑):这本书以类似Effective C++的方式,用50个Item讲解了50个使用COM要注意的问题,非常实用。强烈推荐。
Win32/MFC/COM学习推荐书籍的更多相关文章
- 3、J2EE学习推荐书籍
3.J2EE学习推荐书籍 J2EE的学习应该循序渐进,一本好书会很快上手和深入.在学习J2EE之前,应该学好SQL,基本上,程序设计都会跟数据库打交道.如果SQL没学好,就如同房子没有基脚 ...
- linux内核学习推荐书籍
<UNIX环境高级编程>,推荐指数:★★★★★ <UNIX环境高级编程>是 Unix/ Linux 程序员案头必备的一本书籍.可以说,Linux 程序员如果没有读过这本书,就好 ...
- 《Ray Tracing in One Weekend》、《Ray Tracing from the Ground Up》读后感以及光线追踪学习推荐
<Ray Tracing in One Weekend> 优点: 相对简单易懂 渲染效果相当好 代码简短,只看书上的代码就可以写出完整的程序,而且Github上的代码是将基类与之类写在一起 ...
- Web前端开发推荐书籍
Web前端开发推荐书籍 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 读 书吧~相对于在网上学习,在项目中学习和跟着有经验的同事学习,书中有着相 ...
- IC设计推荐书籍
IC设计推荐书籍 听语音 | 浏览:779 | 更新:2014-07-19 10:52 1 2 3 4 5 6 7 分步阅读 接触IC设计这一行已经有7年的时间了,前面4年是大学本科,用来学习知识,现 ...
- ASP.NET 推荐书籍
ASP.NET 推荐书籍 1.首先推荐一本ASP.NET MVC的书籍 —— <Web开发新体验:ASP.NET 3.5 MVC架构与实战> [点评]:ASP.NET的MVC的书籍本来就不 ...
- MFC的学习路线
首先,MFC是比较难的!比C#和VB要难得多.MFC是基于C++的.首先C++必须熟悉.MFC主要是学习里面的控件的使用. 建议学习路线: 1. 易语言中文编程从入门到精通: https://deta ...
- 前端入门——day1(简介及推荐书籍和网站)
写给谁 这篇文章写给想要入门前端或者刚入门前端的小白~如果是已经工作好几年的小伙伴们可以直接跳过这一系列文章啦. 为啥写这篇文章 终于决定给自己挖这个坑了,之前一直没打算写这样的系列文章.回想起自己的 ...
- HTMl5/CSS3/Javascript 学习推荐资源
HTMl5/CSS3/Javascript 学习推荐资源 前端的定义应该是数据内容的展示,在国内大家都觉得前端只是HTML+CSS+Javascript,但是实际上与展示有关的都是前端,所以Ruby/ ...
随机推荐
- 苹果App Store开发者帐户从申请,验证,到发布应用(2)
app store付费 上面已经介绍了app store id的注册了,下面在注册基础上,介绍一下app store的付费. 在上面注册成功之后,会收到一封邮件. 1.收到邮件Thank Yo ...
- xml--笔记
1.例子 <?xml version="1.0" encoding="utf-8"?> <!--引用css样式文件--> <?xm ...
- ios-贝塞尔曲线
git下载地址:git@github.com:lu459700780/UIBezierPath.git 演示: #import "ViewController.h" @interf ...
- Bzoj1479: [Nerrc1997]Puncher打孔机
1479: [Nerrc1997]Puncher打孔机 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 22 Solved: 14[Submit][Sta ...
- 弹出式菜单(下拉菜单)实现——PopupMenu
PopupMenu代表弹出式菜单,它会在指定组件上弹出PopupMenu,默认情况下,PopupMenu会显示在该组件的下方或上方.PopupMenu可增加多个菜单项,并可为菜单项增加子菜单. 使用P ...
- linux 安装jdk及tomcat指定jdk版本推荐
方法1:用yum命令安装 1. 查看当前jdk版本:Java –version,或者是:rpm -qa | grep jdk 2. 删除当前jdk:yum -y remove java-1.6 ...
- bzoj1562[NOI2009]变换序列——2016——3——12
任意门:http://www.lydsy.com/JudgeOnline/problem.php?id=1562 题目: 对于0,1,…,N-1的N个整数,给定一个距离序列D0,D1,…,DN-1,定 ...
- Swift去除两边的特定字符(空格或其它)
var str_trim = " !hi !23 !" str_trim.stringByTrimmingCharactersInSet(NSCharacterSet.w ...
- JDBC连接SQL Server 2005步骤详解
一.设置SQL Server服务器: 1.“开始” → “程序” → “Microsoft SQL Server 2005” → “配置工具” → “SQL Server Configurati ...
- PHP中file_exists与is_file、is_dir的区别,以及执行效率的比较
判断文件是否存在,有2个常用的PHP函数:is_file 和 file_exists, 判断文件夹是否存在,有2个常用PHP函数:is_dir 和 file_exists, 即 file_exists ...