以前有不少朋友问关于学习各种技术的推荐书籍的问题,这里把我觉得比较好的一些书籍列一下,希望能起到抛砖引玉的作用就好了:)

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 Applicationsby Keith Brown, Tim Ewald, Chris Sells, Don Box (编辑):这本书以类似Effective C++的方式,用50个Item讲解了50个使用COM要注意的问题,非常实用。强烈推荐。

Win32/MFC/COM学习推荐书籍的更多相关文章

  1. 3、J2EE学习推荐书籍

    3.J2EE学习推荐书籍       J2EE的学习应该循序渐进,一本好书会很快上手和深入.在学习J2EE之前,应该学好SQL,基本上,程序设计都会跟数据库打交道.如果SQL没学好,就如同房子没有基脚 ...

  2. linux内核学习推荐书籍

    <UNIX环境高级编程>,推荐指数:★★★★★ <UNIX环境高级编程>是 Unix/ Linux 程序员案头必备的一本书籍.可以说,Linux 程序员如果没有读过这本书,就好 ...

  3. 《Ray Tracing in One Weekend》、《Ray Tracing from the Ground Up》读后感以及光线追踪学习推荐

    <Ray Tracing in One Weekend> 优点: 相对简单易懂 渲染效果相当好 代码简短,只看书上的代码就可以写出完整的程序,而且Github上的代码是将基类与之类写在一起 ...

  4. Web前端开发推荐书籍

    Web前端开发推荐书籍 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 读 书吧~相对于在网上学习,在项目中学习和跟着有经验的同事学习,书中有着相 ...

  5. IC设计推荐书籍

    IC设计推荐书籍 听语音 | 浏览:779 | 更新:2014-07-19 10:52 1 2 3 4 5 6 7 分步阅读 接触IC设计这一行已经有7年的时间了,前面4年是大学本科,用来学习知识,现 ...

  6. ASP.NET 推荐书籍

    ASP.NET 推荐书籍 1.首先推荐一本ASP.NET MVC的书籍 —— <Web开发新体验:ASP.NET 3.5 MVC架构与实战> [点评]:ASP.NET的MVC的书籍本来就不 ...

  7. MFC的学习路线

    首先,MFC是比较难的!比C#和VB要难得多.MFC是基于C++的.首先C++必须熟悉.MFC主要是学习里面的控件的使用. 建议学习路线: 1. 易语言中文编程从入门到精通: https://deta ...

  8. 前端入门——day1(简介及推荐书籍和网站)

    写给谁 这篇文章写给想要入门前端或者刚入门前端的小白~如果是已经工作好几年的小伙伴们可以直接跳过这一系列文章啦. 为啥写这篇文章 终于决定给自己挖这个坑了,之前一直没打算写这样的系列文章.回想起自己的 ...

  9. HTMl5/CSS3/Javascript 学习推荐资源

    HTMl5/CSS3/Javascript 学习推荐资源 前端的定义应该是数据内容的展示,在国内大家都觉得前端只是HTML+CSS+Javascript,但是实际上与展示有关的都是前端,所以Ruby/ ...

随机推荐

  1. 苹果App Store开发者帐户从申请,验证,到发布应用(2)

    app store付费 上面已经介绍了app store id的注册了,下面在注册基础上,介绍一下app store的付费.   在上面注册成功之后,会收到一封邮件.   1.收到邮件Thank Yo ...

  2. xml--笔记

    1.例子 <?xml version="1.0" encoding="utf-8"?> <!--引用css样式文件--> <?xm ...

  3. ios-贝塞尔曲线

    git下载地址:git@github.com:lu459700780/UIBezierPath.git 演示: #import "ViewController.h" @interf ...

  4. Bzoj1479: [Nerrc1997]Puncher打孔机

    1479: [Nerrc1997]Puncher打孔机 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 22  Solved: 14[Submit][Sta ...

  5. 弹出式菜单(下拉菜单)实现——PopupMenu

    PopupMenu代表弹出式菜单,它会在指定组件上弹出PopupMenu,默认情况下,PopupMenu会显示在该组件的下方或上方.PopupMenu可增加多个菜单项,并可为菜单项增加子菜单. 使用P ...

  6. linux 安装jdk及tomcat指定jdk版本推荐

    方法1:用yum命令安装 1.   查看当前jdk版本:Java –version,或者是:rpm -qa | grep jdk 2.   删除当前jdk:yum -y remove java-1.6 ...

  7. bzoj1562[NOI2009]变换序列——2016——3——12

    任意门:http://www.lydsy.com/JudgeOnline/problem.php?id=1562 题目: 对于0,1,…,N-1的N个整数,给定一个距离序列D0,D1,…,DN-1,定 ...

  8. Swift去除两边的特定字符(空格或其它)

    var str_trim = "   !hi  !23   !" str_trim.stringByTrimmingCharactersInSet(NSCharacterSet.w ...

  9. JDBC连接SQL Server 2005步骤详解

    一.设置SQL Server服务器:    1.“开始” → “程序” → “Microsoft SQL Server 2005” → “配置工具” → “SQL Server Configurati ...

  10. PHP中file_exists与is_file、is_dir的区别,以及执行效率的比较

    判断文件是否存在,有2个常用的PHP函数:is_file 和 file_exists, 判断文件夹是否存在,有2个常用PHP函数:is_dir 和 file_exists, 即 file_exists ...