找回密码
 申请新用户
搜索
热搜: 活动 交友 discuz
查看: 7559|回复: 0

主厨推荐 侯捷菜单

[复制链接]
发表于 2008-11-28 10:16:06 | 显示全部楼层 |阅读模式
转自:http://jjhou.csdn.net/article99-3.htm
1999.01.14 发表
   


  > 侯先生您好:
> 对於您写文章及书籍的功力早就耳有所闻。最近再拿起  
> <无责任书评2>来读更有这种感觉。自己对於您 1999 计划所着、
> 译、改版之众多书籍相当期待,但就如您所说的「有人练书法,
> 有人写毛笔字,有人拿有毛的笔写字」,在等待您巨着出来的同
> 时,我也不禁问自己,需要再加强些什麽,才有能力消化您即将出
> 的书呢?我是一个主修资管的大三学生,我认为自己的基础知识并
> 不深厚,但对於 Windows 的内部原理又极有兴趣。我没有 SDK
> 经验,更没有 MFC 概念,对於 C++ 我只能说半生不熟。所以,
> 我有个不情之请,想请侯先生给我一张书单,亦或能告诉我
> 如何才能踏进这一块系统程式内部的园地?
>
> 读您的书是我最大的快乐,能读懂并融会贯通甚至应用则是
> 我最大的希望...
>
> 一位希望能拿有毛的笔写字的忠实读者
> Eddie Fu

●少年当立凌云志

当然,Eddie 绝不只是希望「拿有毛的笔写字」而已,他应该是希望达到书法的境界,只是不好意思说出来。

Eddie 和其他许多年轻朋友(以及曾经的我)一样,可能不太敢对自己(和别人)宣示:「我要如何如何...,我要达到怎样怎样的目标...」。

为人不必骄傲,但需立志高远,如高山崴巍,如水流汤汤。

●我对 Eddie 的建议

如果你最终的标的平台是 Windows,以下是我的建议程序:

1. C/C++ (console mode 练基本功。尤重 polymorphism 观念之建立)
2. SDK(了解 message based, event driven 之观念後,即可尝试 MFC)
3. MFC programming (or BCB programming)
4. Windows OS 观念(亦可与 SDK programming 并进学习)
5. COM(or CORBA)

●动机

之前,在学校的演讲场合中,我总会推荐各领域的好书给大家。後来觉得抄写书名和作者,很费时间,而 <无责任书评> 以及时而发表的文章中,又已有这些书籍的列表和详尽介绍,所以慢慢就不再现场抄写了,直接请大家到 BBS(News)找文章,或查阅 <无责任书评>。

但又总是知道,不是每个人都常常上网,也不是每个人都刚好能够看到那些书评文章。新来者众,他们或许更不知道有这些资讯。

1998/10/30 在辅大的演讲中,我答应把一些经典好书重列一份,载於 BBS。迟迟未能整理出来的原因是,我真的很忙碌;不忙於工作的时候,则忙着休息。
收到 Eddie 的信,又有了动机。於是将书单整理於下,并加上个人观感。书单中缺乏 C 语言书籍,实是因为我学习 C 语言的时代距今已太过久远,而目前书肆中的 C 语言书籍我都很陌生。

我的主要阅读范围在:

o. C++/OOP
o. SDK programming
o. Visual C++/MFC programming
o. Windows OS
o. Windows Driver programming
o. COM/OLE/ActiveX

书单中绝大部份是英文书,中文书方面只列出侯捷自己的作品。列出自己的作品是因为作者本人当然最清楚自己作品的份量,而我有信心荐之;未列出他人的作品是因为其他中文书籍我阅历不多,实在不敢置一词。

原文书方面,我把我所知道的中译本列出,但并非就此代表我的推荐。中译本好坏与否,请自行找朋友师长探探口碑。

有些中译本我手上没有,但残留有逛书店时的印象,那麽其书名年份译者等详细资料就可能有所缺漏。若网友知道请协助补上。

●侯捷书单 & 个人观感

以下只列各主题之奠基好书。各式各样之次主题,不列;浩瀚书海中的其他好书,囿於侯捷的阅读范围与能力,遗珠难免。

■C:

侯捷学习 C 语言的时代距今已太过久远,而目前书肆中的 C 语言书籍我都很陌生,所以没有办法推荐。

■C++:

★ The C++ Programming Language (3/e)
by Bjarne Stroustrup, Addison Wesley 1997, 910 pages
叶秉哲译/C++ 程式语言/儒林(听说已在後制作阶段)

属「C++ 百科」级的书。此书可谓 C++ 原典,具权威性,由 C++ 之父所着。连 ANSI C++ 制定时都得叁考此书。不论是内容深度或文字风格,都不适合生手,但很适合做为进阶研究或叁考查阅壮胆之用。原文书之code 编排令我感到不舒服,行文之间学院派的味道颇重。本书为与C++ Standard 相映合,有份量极重之 errata,务请读者上网下载。网址:???

★ C++ Primer (3/e)
by Stanley B. Lippman & Josee Lajoie, Addison Wesley 1998, 1237 pages
侯俊杰译/C++ Primer 中文版/ 峰(预定 1999/09 完成)

在「C++ 百科」类书中,与 The C++ Programming Language 齐名,亲和性较佳。老字号,有口碑。副作者 Josee Lajoie 是 ANSI/ISO C++ Standard 委员会的核心语言工作小组主席,因此本书在与C++ Standard 的密合度上,当可令人放心。本书之 errata 网址:http://people.we.mediaone.net/stanlipp/index.html

★ Thinking in C++
by Bruce Eckel, Prentice Hall 1995, 813 pages
未见译本

也属「C++ 百科」类书。口碑甚佳,唯目录所列页次与实际页次 offset 4。1/e 年代过於陈旧,当此 C++ Standard 已定案之际,实属过时。2/e 已在 beta 版,请叁考:http://www.BruceEckel.com/ThinkingInCPP2e.html

★ C++ Standard ISO/IEC 14882,1998
"rogramming Language - C++", 748 pages
不可能有人翻译,翻译了也不可能有人愿意出版

醉心学术以及喜欢看 definition 的人,一定会喜欢。有此资料在手,与人争辩 C++ 时可使用最大的胆子和最大的分贝。电子版(PDF 格式)可於
http://webstore.ansi.org/ 购得,US$ 18.0。列印出来装订得美美的,
摆在架上足以唬人。

★ Inside the C++ Object Model
by Stanley B. Lippman, Addison Wesley 1996, 280 pages
侯俊杰译/深度探索 C++ 物件模型/ 峰/1998

适合给已有 C++ 经验的人阅读。可为你扎下 C++ 内部机制的深厚基础。原文书笔误极多(100 个以上,大大小小),影响阅读甚巨,建议读中译本。对大部份人而言,chap3,4 可带来最大边际效益。

★ Effective C++
by Scott Meyers, Addison Wesley 1992, 206 pages
陈泰维译/Effective C++ 中译本/和硕/1997

以条列方式列出 50 条宝贵的程式经验。每一条均有深入的原理说明。适合有 C++ programming 经验者。本书已有第二版,以下资料查自 www.amazon.com:256 pages 2nd edition (September 1997) Addison-Wesley Pub Co; ISBN: 0201924889

★ More Effective C++
by Scott Meyers, Addison Wesley 1996, 318 pages
未见译本

以条列方式列出 35 条宝贵的程式经验。每一条均有深入的原理说明。适合有 C++ programming 经验者。此书将与 Effective C++ 合并出光碟版,可叁考
http://meyerscd.awl.com/DEMO/INDEX.HTM

★ 多型与虚拟(Polymorphism in C++)340 pages
by 侯俊杰着/松岗/1998/340页

在 C++ 语法粗具的基础上,直接把读者导引到最核心最重要的物件导向观念,并且在建立这个观念的过程中,提供足够的必要基础。第5章展示如何建立一个 C++ framework 的底层基础建设(以 MFC 为本),第6章带领读者从 C++ Object Model 跃向 Component Object Model。适合对 C++ 有点认识但一知半解者。

★ Large Scale C++ Software Design
by John Lakos, Addison Wesley 1996, 845 pages
未见译本

想吸收 C++ 大型软体经验的人,可资叁考。


■SDK programming:

★ Programming Windows (5/e)
by Charles Petzold, Microsoft Press 1998, 1479 pages
新版 Programming Windows 尚未见有译本。 前一版 Programming Windows 95 松格有译本。 再前一版 Programming Windows 3.1 松岗有译本。

崇高的地位,无瑕的口碑,完整的规划,伟大的销售量;骇人的页数,骇人的尺寸,骇人的重量,骇人的价格。是 SDK(Windows API)Programming 的近乎全典,适合入门亦适合进阶。

★ Windows 95 : A Developer's Guide
by Jeffrey Richter, M&T Books 1995, 619 pages
李书良译/侯俊杰总监/Windows 95 程式设计指南/ 峰/1997
前一版(for Win3.1)译本 Windows 程式设计实务(二)/旗标

空谷幽兰,一本鲜为人知的绝佳书籍。进阶用,主题包括 anatomy of RegisterClass, CreateWindow, WindowProc,hooks, subclassing, superclassing, processing keystrokes...。无 SDK programming 基础者勿试。

★ Advanced Windows (3/e)
by Jeffrey Richter, Microsoft Press 1997, 1048 pages
张永庆译/深入 Windows 程式设计/松岗/1998

从 API 层面下掘 Windows 作业系统。主题包括 processes, threads, memory architecture, thread synchronization, DLL, TLS, File system, Device I/O, Unicode...。本书亦可归类於Windows 作业系统类。无 SDK programming 基础及作业系统基本概念者勿试。

■VxD and system programming

★ System Programming for Windows 95
by Walter Oney, Microsoft Press 1996, 715 pages
侯俊杰译/Windows 95 系统程式设计/松岗/1998

前半部讲 Win95 作业系统的 system programming 基础概念(偏重虚拟机器),中段介绍 VxD programming 概念,後半部以 VxDs 实务为主。内容丰富,进阶实务两相宜。书中程式方法:C/DDK and C++/VToolsD 都有。

★ Writing Windows VxDs and Device Deviers (2/e)
by Karen Hazzah/R&D Books 1997, 480 pages
未见译本

前半部讲 Win95 的虚拟机器观念,中段介绍 VxD programming 基础,後半部以 VxDs 及 DLL Drivers 实务为主。此书与 <System Programming for Windows 95> 各擅胜场,1/e 的图片尤令人印象深刻。书中程式方法:C/DDK。

■Windows O.S(or System Programming)

★ Windows 95 System Programming Secrets
by Matt Pietrek, IDG Books 1996, 780 pages
侯俊杰译/Windows 95 系统程式设计大奥秘/旗标/1997

侯捷评语:黄娟少妇,外孙 臼(借杨修语)。一本绝妙好书,挖掘 Windows 95 作业系统对於 processes, modules, threads, address space, memory context, context switch, executable file format... 的实作方式,以资料结构与虚拟码方式呈现。阅读此书可对 Windows 作业系统层面有透彻认识,最大功用不在写出别人写不出的程式,而在「从此胸中自有丘壑」的从容感。这些系统基本观念在 Windows NT 之下不可能有太大变化。无 SDK programming 基础及作业系统基本概念者勿试。书中程式方法:C/SDK

★ Advanced Windows 3/e
by Jeffrey Richter, Microsoft Press 1997, 1048 pages
张永庆译/深入 Windows 程式设计/松岗/1998

从 API 层面下掘 Windows 作业系统。主题包括 processes, threads, memory architecture, thread synchronization, DLL, TLS, File system, Device I/O, Unicode...。无 SDK programming 基础及作业系统基本概念者勿试。书中程式方法:C/SDK

★ Inside Windows NT (2/e)
by David A. Solomon, Microsoft Press 1998, 528 pages
未见译本

此应是目前关於 Windows NT 作业系统的最深入书籍,谈的都是作业系统基本教义派的主题:system architecture, system mechanisms, processes and threads, memory management, security, I/O system, file system...,并教导以各式工具观察系统行为与效能。无作业系统基本概念者勿试。

■Windows NT kernel mode driver:

★ The Windows NT Device Driver Book
by Art Baker, Prentice Hall 1996, 522 pages
未见译本

此书完全探讨 Windows NT 的 kernel mode driver,硬派!读者需具备以下背景:1. 有基本的 Windows NT 使用经验,包括 logging in,安装各式 drivers...。2. 有 C 程式设计经验。3. 有 Win32 user mode 程式设计经验者佳。4. 你必须了解你的硬体,才能为它写出 driver。

★ Windows NT Device Driver Development
Peter G. Viscarola & W.Anthony Mason, MTP publishing 1999, 684 pages
峰正在翻译

灰色的封面,非主流的出版公司,感觉是旧书摊的货色,但是里头可能有黄金。我尚未阅毕此书,但 Weipo 兄既然说不错,肯定错不了。

■Visual C++/MFC

★ Inside Visual C++ (5/e)
by David Kruglinski, George Shepherd, Scot Wingo, Microsoft Press 1998, 1153 pages 5/e
尚未见有译本, 4/e 无译本, 3/e 侯俊杰译/深入 Visual C++ 4.0/ 峰/1996

Visual C++ step by step 的鼻祖。兼顾 Visual 工具使用与程式设计技术。是 Visual C++/MFC programming 书籍中读者群最广的一本。本书虽为 MFC 新手而写,唯 MFC 新手是否可以照单服用,不无疑问。这就和「学习 C++ 是否要切入 C++ object model?何时切入?」的问题如出一辙。此剂服用之後如出现不良症状,应以 <深入浅出 MFC> 或 <rogramming Windows 95 with MFC> 为引。

★ 深入浅出 MFC 第二版(Dissecting MFC 2/e),
by 侯俊杰, 松岗 1997, 940页

虽然范例不多且无新意,主要以 Visual C++ 标准范例程式 Scribble 为轴,但深入之层面甚具意义。本书主旨在利用 Scribble 的循序渐进,挖掘 MFC framework 的组织架构,重点放在骨干程式的来龙去脉、runtime type information, dynamic creation, persistence, message mapping, command routing, document/view/template...。适合 MFC 新手。此剂服用之後如出现不良症状,应以 <多型与虚拟> 及 <rogramming Windows> 为引。

★ Programming Windows 95 with MFC
by Jeff Prosise, Microsoft Press 1996, 999 pages
黄昕 译/深入 ActiveX/松格/1997

此为与 <rogramming Windows 95> 配套之 MFC 版。不重工具之使用,着重 MFC 程式的手工打造过程。在范例设计与 MFC 组织结构的篇幅比例上,颇为得宜。适合 MFC 新手。听说即将有 2/e。

★ MFC Internals
by Shepherd & Wingo, Addison Wesley 1996, 709 pages
未见译本

市面上探讨 MFC 组织架构之书,以此书为最。对於资深之MFC programmer 可带来程式设计以外的另一层帮助,当然这层帮助最後也会回映到程式设计上来。适合 MFC senior。MFC 功力无三两三者,不要轻率想过梁山。

■COM/OLE/ActiveX

★ Inside COM
by Dale Rogerson, Microsoft Press 1997, 376 pages
黄昕 译/深入 COM/松格/1997

很容易上手的一本 COM 入门书。范例设计得简单明了,堪称COM 之最佳引渡书籍。然而读者若要对 COM 的来龙去脉有根本性的了解,以去除心中挥之不去的障碍,还需 <Essential COM> 第1章的协助。

★ Essential COM
by Don Box, Addison Wesley 1998, 440 pages
侯俊杰译/COM 本质论/ 峰/1999

第1,2两章适合 COM 入门。後续章节深掘 COM 的工作原理,可能会令不少人吃不消。不过即使只读懂第1,2章也已完全值回票价,因为写得太好了。

★ Effective COM
by Don Box etc., Addison Wesley 1999, 220 pages
未见译本

以条列方式列出 50 条宝贵的程式经验,每一条均有深入的原理说明。用以改善 COM 和 MTS(Microsoft Transaction Server)应用程式。

★ Understanding ActiveX and OLE - A Guide for Developers & Managers
by David Chappell, Microsoft Press 1996, 328 pages
黄俊翔译/ ActiveX/OLE 技术手册/松格/1997

一本着重观念的书籍。没有技术背景的人,大概只能看 3 分钟。虽然书名副标显示经理人也可以看,但除非这位经理人刚从 COM/ActiveX 开发小组中调过来不满半年,否则我不相信。此书做为观念总整理是不错的,搭配前述硬梆梆的 COM 技术书籍,颇得另番滋味。

■Windows Registry

★ Inside the Windows 95 Registry
by Ron Petrusha, Oreilly 1996, 575 pages
有译本否?

深深深!只想认识 Windows Registry 之架构与使用方式的人,将会剔到铁板,但对於有 system programming 能力者,应该是一块金砖。由於 Registry 本就藏着系统的诸多秘密,能够规划 registry 甚至监视 registry,当然也就得以刺探系统的诸多秘密。

★其他的 Registry 书籍

其他的 Registry 书籍,大同小异。主要是给 power users 或 system administrators 看的,not for developers。

■Assemble

★ Microsoft Macro Assembler Bible (2/e)
by Barkakati and Hyde, SAMS (Waite Group) 1992, 952 pages
吴启仁译/Macro Assembler 程式设计师专辑/ 峰/1993

极佳的 Assembly programming 手册,内容详尽。为了解某些反组译(除错)出来的低阶动作,我仍时常藉助本书。
您需要登录后才可以回帖 登录 | 申请新用户

本版积分规则

守望轩 ( 湘ICP备17013730号-2 )|网站地图

GMT+8, 2024-3-28 23:27 , Processed in 0.066788 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表