我爱Aspx >> Asp.Net >> 【C++/OOP】(侯捷著)| 侯捷观点(系列书评 1/2)【C++/OOP 大系】《程序员》2001.01 | ||||
| 作者简介:侯捷,台湾电脑技术作家,着译评兼擅。常着文章自娱,颇示己志。个人网站:http://www.jjhou.com http://jjhou.readme.com.tw北京镜站:http://expert.csdn.net/jjhou ●开场白《程序员》杂志邀我开一个专栏。我向来期待一本为程序员打造、以程序员为主体对象的刊物,因此这样的邀请很难推却。再加上蒋涛先生与我的私交,我於是要求自己,尽可能拨出时间来为《程序员》写稿。专栏可以开,能不能全无间断则不敢保证。大陆读者对我肯定陌生,容我简介自己。我是一名资讯教育工作者,写译书籍,培训业界人员,主持网站回应读者与学员,并於大学开课。进入教育领域之前,我分别担任过台湾工业技术研究院机械所和电通所的副研究员和特约研究员,分别研发 CAD/CAM 软体和 Windows 多媒体系统。有人戏称工研院为少林寺 ─ 位在山上,男多女少,高手如云,艺成下山闯荡江湖者不计其数。写这篇稿子的此刻,我投入教育领域正好十年。这是一条科技人很少想过的路子,於我也是生命中一个不经意的转弯。不过,这种迥异於软体研发也迥异於象牙塔教学的生涯,实在是多彩多姿,与读者的互动尤其曼妙无比。我的钻研领域,前七年都在 Windows 编程方法和作业系统原理,近三年则放在更基础的、与平台无关的层面。 ●书籍是永远的良师益友过去十年中,有一件事最是奇特有趣:我於 1993 开始《无责任书评》专栏,介绍我所能够掌握的技术范围内的一些世界名着。这样的题材与文体,吸引了很多目光,也开创了某种先河。《无责任书评》夹杂对台湾电脑出版业的观点与评论,由於当时台湾电脑书的良窳程度极端不均(现在也是),初阶 滥而高阶贫血(现在也是),我以程序员的角度所给的评论显得尖锐不群。1998 年网际网路兴盛,我把所有电脑散文都移到网路上发表,范围扩及学习方向与学习态度(但不涉及细节技术)。过去的书评文章也重新整理了起来。各位可从侯捷网站上看到所有这些文章。书评之所以受人欢迎,一方面在它的知识性,一方面在它的辛辣味。通常我的原则是只评好书(该说是「荐」而不是「评」了),所以辛辣味只藏在旁徵博引的明喻暗讽之中,或偶尔忍不住的一把火。一般而言,只要有丰富的知识含量,而不是单纯地将章节照录一遍,书评专栏就够吸引人了,辛辣味只是附带红利。诸君如想尝尝真正的川辣子,看看国外期刊的书评,肯定叫温良恭俭让的中国人频频抚胸,大惊失色。好书之於学习(尤其是自修),重要性自不待言,所以书评永远受欢迎。好书是一支钓杆,好书评则让你认识这支钓杆并告诉你到哪儿去买。单一书评固然好,如果能系列化、系统化、根据技术的演进与层次,铺陈一条学习的红地毯,就更有价值。过去我曾经分篇为台湾读者介绍过 C++/OOP 方面的许多好书。做为本专栏的第一篇,我决定将它们汇总结集,让你一次看饱买足。 ●阅读之前往下阅读之前,我想先谈一些打底的话。第一,以下介绍的全都是外来书。各位购买这些书籍或许有经济压力,但毕竟它们都是成名已久的世界名着,我想,为读者开这扇窗绝对是很重要的。购买这些书籍其实很方便,只要你有信用卡,连上亚马逊网路书店(www.amazon.com)爱怎麽买就怎麽买。我们的困难可能在於信用卡和书价。唔,加上运费真的很贵。第二,在我少不更事的时候,读了一本好书并不会回头特别记下作者姓名。这是个绝对错误的态度。茫茫书海中该如何选书?第一次当然是到书店去乱枪打鸟,浪费一点子弹。但是你不能老停留在少不更事的阶段,你的子弹还有你的书架空间都很宝贵,你的时间更宝贵。牢记优秀作家的名字,是找好书的捷径。这其实也是写阅环境的一个进步表徵:让好作家有自己的品牌。第三,OO(Object-Oriented,物件导向)领域,从编程到设计,可概分为 OOP(Progrmming)、OOA(Analysis)、OOD(Design)。目前国外十分成熟的 UML(Unified Modeling Language)属於OO 领域里头用来将设计概念表现出来的一种 notation(符号表现法)。本篇文章只介绍到 OOP 这个层次(唯 [Gamma95]稍属例外),这比较具体,也比较贴近大部份程序员。愈往上去愈抽象,愈接近软体工程或方法论。第四,以下介绍的这些 C++/OOP 书籍,几乎成为我初步判断一个人在这方面水平的基准。一个具备数年经验的 C++ 程序员,或许自己能够摸索出「总是让 base class 拥有 virtual destructor」这样的准则,但初出茅庐的程序员,恐怕连 virtual destructor 是什麽都不甚有概念,更别说该如何正确运用它。如果他说他看过 [Meyers98],我会比较放心他的水平。有趣的是,我曾经在自己班上(学生从大二到研究生都有)做了一个调查。拥有这些书籍的学生人数并不多,而且老是同样几位。这让我感觉,强者恒强弱者恒弱,悲夫。就我和业界的广泛接触经验,我也发现,许多程序员离开学校後就不太看书了,或者因为忙碌,或者因为安於现况。专案做了不少,技术却没有精进太多。三两下招数一再用老,人特别容易空乏。请你打开这扇窗,你会发现巨着之所以为巨着,专家经验之所以为专家经验,是有道理的。愈是看了这些书,你愈会发现这些书的价值,并觉醒过去的一些愚蠢行为。第五,下面开出来的书单都是我熟读过的,其中甚且不少繁体中文版是我翻译的,所以我放心推荐并接受质询。然而书海浩瀚,遗珠难免。第六,为求方便,以下以学术界习惯的标示法,标示书籍代名。文中即使用这些代名。凡有中文版者,我会特别加注。[Ellis90]
Ҷƪл˵?
һƪ阳历到阴历的转换
|