rosial

          lost memory
          數(shù)據(jù)加載中……

          《爪哇夜未眠》- 圖書(shū)篇 - 偶像崇拜

          偶像崇拜(一)
          你的偶像是誰(shuí)?在高中時(shí)代,我的偶像是抒情浪漫、高亢激昂的空中補(bǔ)給(Air Supply)以及靜如處子、動(dòng)如脫兔的凱莉·米洛(Kylie Minogue);現(xiàn)在我的偶像是David Flanagan、Jonathan Knudsen、Elliotte Rusty Harold、Bruce Eckel等人。你問(wèn)我David Flanagan等人唱過(guò)什么歌,喔!你誤會(huì)了,他們不唱歌,他們是Java技術(shù)作家。
          我認(rèn)為,適當(dāng)?shù)爻绨輧?yōu)質(zhì)的偶像,可以激勵(lì)起自己“有為者亦若是”的精神,使得自己加倍努力地向偶像看齊,對(duì)于自己能力的提升有莫大的助益。崇拜的對(duì)象在于精,不在于多,你得好好地挑選出“優(yōu)質(zhì)的偶像”。
          在學(xué)習(xí)C/C++程序設(shè)計(jì)的時(shí)代,我的偶像是Herbert Schildt和Bruce Eckel。在我學(xué)習(xí)Windows程序設(shè)計(jì)的時(shí)代,我的偶像是Jeffrey Richter和Tom Swan。而現(xiàn)在我全部的精力都放在Java上面,我的偶像變成了David Flanagan、Jonathan Knudsen、Bruce Eckel、Elliotte Rusty Harold。為什么是他們四個(gè)?因?yàn)樗麄兯膫€(gè)都已經(jīng)出過(guò)數(shù)本Java書(shū)籍,而且?guī)缀趺恳槐镜膬?nèi)容都獨(dú)一無(wú)二,都是經(jīng)典。
          David Flanagan寫(xiě)過(guò)的書(shū)包括Java、J2EE、JFC、JavaScript,每一本都很精采,其中的《Java in Nutshell》一書(shū)更是人手一本的Java經(jīng)典,此書(shū)年年獲得JDJ的Java好書(shū)讀者票選榜首。要寫(xiě)出《Java in Nutshell》這樣深入淺出、叫好叫座、可讀可查的書(shū),我想David Flanagan肯定是花了不少心力。
          Jonathan寫(xiě)過(guò)幾本主題特殊的書(shū)籍,包括《Java密碼學(xué)》、《Java 2D圖學(xué)技術(shù)》、《樂(lè)高可編程積木》,每一本都得到非常好的評(píng)價(jià)。基本上,Java 2D并不如EJB、Servlet、Swing等主題來(lái)的熱門(mén),O'Reilly的Java 2D一書(shū)能如此暢銷(xiāo),甚至躍居 JDJ的Java好書(shū)票選排行第四,作者Jonathan功不可沒(méi)。目前,Jonathan正全力在O'Reilly寫(xiě)書(shū),所以我們可以期待不久之后他一定又會(huì)推出新書(shū)。只是,Jonathan是如此地博學(xué)多聞,我們無(wú)法預(yù)期他的下一本書(shū)會(huì)是什么主題。
          Bruce Eckel是一名專(zhuān)業(yè)的顧問(wèn)、講師、和作家,他的研究范圍以面向?qū)ο蟮膽?yīng)用為核心,涵蓋C++、Java、Python、CORBA、Design Patterns。Bruce Eckel 的經(jīng)典名作包括《Thinking in Java》和《Thinking in C++》。早在他的《Thinking in C++》第一版推出時(shí)(大概五年前),我就注意到他了。他的書(shū)中遍布深入而獨(dú)到的見(jiàn)解,讓我獲益良多。Bruce Eckel這些年來(lái)大發(fā)慈悲,把他幾本“最新版”的書(shū)的電子文件放到網(wǎng)站上供人下載,根本不管這樣會(huì)影響到印刷版的銷(xiāo)售量,少賺許多錢(qián)。我的周遭有許多人都是透過(guò)下載回來(lái)的《Thinking in Java》來(lái)學(xué)習(xí)Java的。《Thinking in Java》一書(shū)還得到今年Jolt Award的獎(jiǎng)項(xiàng)。
          Elliotte Rusty Harold是我最喜歡的作者,我喜歡他的程度更甚于前三位作者。Elliotte的《Java Network Programming》、《Java I/O》、《XML Bible》等書(shū)都是該領(lǐng)域 #1 書(shū)。Elliotte還維護(hù)一個(gè)Cafe Au Lait網(wǎng)站,天天更新內(nèi)容,提供最新的 Java/XML動(dòng)態(tài)。Elliotte 的書(shū)好到連 Bruce Eckel 都稱(chēng)贊:“在讀過(guò)Elliotte的《Java Network Programming》一書(shū)之后,我才真正了解到網(wǎng)絡(luò)程序設(shè)計(jì)是怎么回事。”
          當(dāng)然我的Java偶像不只這四位,還有許多。沒(méi)有這些作者,我的Java程度就不能如此快速地日漸精進(jìn)。如同Bette Midler的一首歌:“You are the wind beneath my wings”。
          如果你光只是崇拜技術(shù)偶像,而沒(méi)有把這股力量導(dǎo)向正面,沒(méi)有努力地讀完并徹底了解偶像所寫(xiě)的書(shū),那就可惜了。我有一個(gè)同學(xué),他的嗜好是收集了技術(shù)偶像的簽名書(shū)并和偶像合照,只差見(jiàn)到技術(shù)偶像不會(huì)尖叫,感謝老天!在被他收集的名家當(dāng)中,面向?qū)ο蟠髱烥rady Booch更是赫然在列,他甚至將Grady Booch和他的合照放在皮夾中,可以隨時(shí)拿出來(lái)瞻仰一番,但是他卻沒(méi)詳讀過(guò)Grady Booch的書(shū),甚至不知道Booch Notation中的實(shí)線云朵和虛線云朵之間的差異,這樣的技術(shù)偶像崇拜就太膚淺了。
          你沒(méi)有技術(shù)偶像嗎?我不介意你和我崇拜相同的人。

          偶像崇拜(二)
          試探性地摘下墨鏡和帽子,我冒著極大的風(fēng)險(xiǎn)繞了天瓏書(shū)局一圈,大家渾然未察覺(jué)一個(gè)名人就在附近。這就怪了,不是有許多讀者寫(xiě)email給我,說(shuō)我是他們的偶像嗎?這時(shí)候竟然沒(méi)有半個(gè)人出來(lái)簇?fù)砦遥髻M(fèi)我特別穿了一件容易被扯爛的衣服,真是叫人“失望”!不!我是說(shuō)“慶幸”。
          不過(guò)讀者會(huì)把我當(dāng)成偶像,實(shí)在是令人匪夷所思。我除了在“Sleepless in Java”專(zhuān)欄上寫(xiě)了一些文章,又翻譯過(guò)幾本銷(xiāo)售量屢創(chuàng)新低的書(shū)之外,實(shí)在沒(méi)什么了不起的事跡。讀者email給我的問(wèn)題,有不少我是答不出來(lái)的,這樣的人還配當(dāng)偶像?一定是因?yàn)槲以谂枷癯绨菀晃闹兴榻B的偶像太少了,所以此次的文章又多介紹四個(gè)偶像,好讓大家有移情別戀的對(duì)象。
          Martin Fowler是我近期的新歡,是一位不可多得的大師級(jí)信息作家。他不但技術(shù)能力強(qiáng),寫(xiě)出來(lái)的書(shū)更是相當(dāng)好讀。許多人稱(chēng)經(jīng)典的書(shū)往往過(guò)于艱澀難讀,所以當(dāng)我看到 Martin Fowler能夠把高深的知識(shí)講得深入淺出,清晰有條理,讀起來(lái)毫無(wú)壓力時(shí),我馬上移情別戀,把Martin Fowler 移到我的偶像排行榜第一名。
          Martin Fowler所寫(xiě)的《Refactoring》一書(shū),可以說(shuō)是繼四人幫(Gang of Four)的《Design Patterns》之后,又一本影響力深遠(yuǎn)的書(shū),Martin Fowler也因?yàn)榇藭?shū)變成 Refactoring的掌門(mén)人。Refactoring是XP(eXtreme Programming)的一個(gè)重要的因素。Martin Fowler所寫(xiě)的這本《Refactoring》成功地將常用的Refactoring分類(lèi)、命名、舉例說(shuō)明。熱門(mén)的主題往往會(huì)引來(lái)一陣跟風(fēng)(Design Pattern 即為一例),但《Refacotring》一書(shū)問(wèn)世至今,尚未有人寫(xiě)書(shū)趕此一熱潮,我想可能是因?yàn)镸artin Fowler的這本書(shū)實(shí)在太成功的緣故。建議你現(xiàn)在就去搶購(gòu),這本書(shū)很棒,“如果這本書(shū)不好的話,你們就來(lái)捶我好了”(語(yǔ)出多芬洗發(fā)精的電視廣告。)
          Martin Fowler另外兩本很有名的作品是《UML Distilled》和《Analysis Patterns》。《UML Distilled》以去蕪存菁的方式敘述UML,許多人都是透過(guò)此書(shū)才認(rèn)識(shí)UML 的。而《Analysis Patterns》一書(shū)可以說(shuō)是四人幫《Design Patterns》的OOA版,也是目前唯一一本Analysis Pattern領(lǐng)域的書(shū)。雖然《Analysis Patterns》未若《Design Patterns》掀起巨大的旋風(fēng),但實(shí)在不是Martin Fowler書(shū)寫(xiě)得不好,而是業(yè)界一向都比較重OOD輕OOA的緣故。
          第二個(gè)偶像是Bill Day。在今年臺(tái)北的Sun TechDays研討會(huì)上,不經(jīng)意地遇到Bill Day,我馬上進(jìn)入小鹿亂撞、袋鼠亂跳、又大象亂蹦的高度亢奮狀態(tài),逮著機(jī)會(huì)就不要臉地纏著他猛聊。還好我一直都在加強(qiáng)英文,和他溝通起來(lái)沒(méi)有障礙。
          Bill Day大學(xué)主修的是航空工程,畢業(yè)后卻轉(zhuǎn)換跑道到信息產(chǎn)業(yè),而且還非常成功。Bill Day幾年前的領(lǐng)域是在 JMF(Java Media Framework),JMF的規(guī)格書(shū)中有許多他的貢獻(xiàn),我記得當(dāng)時(shí)他可以說(shuō)是JMF領(lǐng)域中的第一把交椅。目前,Bill Day任職于Sun,負(fù)責(zé)帶領(lǐng)一個(gè)J2ME的team,他同時(shí)還在大學(xué)開(kāi)課教Java 3D。Bill Day原本擬在O'Reilly 出版一本JMF的書(shū),但書(shū)寫(xiě)了半本之后,就沒(méi)下文了,畢竟優(yōu)秀的人總是很忙的。但我可管不了這么多,我還慫恿他寫(xiě)一本Java 3D的書(shū)。
          我覺(jué)得像Bill Day這樣可以從航空跨到信息,從多媒體通訊(JMF)跨到無(wú)線通訊和嵌入式系統(tǒng)(J2ME),再跨到計(jì)算器圖學(xué)(Java 3D),而且都成果豐碩的軟件工程師,實(shí)在很少。
          第三個(gè)偶像是Alistair Cockburn,他所寫(xiě)的《Writing Effective Use Cases》一書(shū)剛剛得到今年的 Jolt Award(軟件界很重要的獎(jiǎng))Books and Computer-Based Training 類(lèi)的 Productivity Award。《Writing Effective Use Cases》一書(shū)針對(duì)寫(xiě)Use Case時(shí)的know-how有相當(dāng)不凡的見(jiàn)解,這本書(shū)得獎(jiǎng)絕對(duì)是實(shí)至名歸。他在書(shū)中所提出的方法讓我們?cè)趯?xiě) Use Case的時(shí)候有所依循,而且我覺(jué)得他獨(dú)創(chuàng)的符號(hào)實(shí)在很酷,希望Use Case的寫(xiě)作軟件也能支持這些有趣的符號(hào)。
          Cockburn還有另一本書(shū)名為《Surviving Object-Oriented Projects》,我尚未閱讀,手邊也還沒(méi)有此書(shū)。我把這本書(shū)列入我Future Reading List的書(shū)目中。糟糕!這個(gè)Future Reading List的書(shū)越來(lái)越多了。
          第四號(hào)偶像是Scott Oaks。他在O'Reilly 寫(xiě)過(guò)數(shù)本Java 書(shū),包括《Java Threads》、《Java Security》、《Jini in a Nutshell》。我發(fā)現(xiàn)Scott Oaks和Jonathan Knudsen有點(diǎn)類(lèi)似,所寫(xiě)的每一本書(shū)主題差異都頗大。Scott Oaks所寫(xiě)出來(lái)的每一本書(shū),內(nèi)容循序漸進(jìn),很好閱讀,而且深度也很夠。以Java Threads一書(shū)來(lái)說(shuō),內(nèi)容采取引導(dǎo)式教學(xué)的方式,這是自學(xué)類(lèi)書(shū)籍內(nèi)容安排最好的方式,也是最不容易寫(xiě)的方式。Scott Oaks的《Java Security, 2nd Ed》和《Jini in a Nutshell》也都是讀者評(píng)價(jià)很好的書(shū)。
          從我所崇拜的偶像名單中,可以看出我近期的喜好。上次列出的四位偶像都是Java書(shū)籍作者,此次卻是一位Java書(shū)籍作者、一個(gè)Java程序員、兩個(gè)軟件工程類(lèi)書(shū)籍作者。我最近對(duì)于軟件工程有莫名的狂熱。

          偶像崇拜(三)
          這是“偶像崇拜”系列的第三篇,當(dāng)初怎么也沒(méi)想到“偶像崇拜”會(huì)從一篇文章變成一系列文章。其實(shí)我的想法是:獨(dú)樂(lè)樂(lè)不若眾樂(lè)樂(lè),介紹大家多多認(rèn)識(shí)一些優(yōu)秀的信息界賢達(dá),也算是功德一樁。不過(guò)我要強(qiáng)調(diào),我鼓勵(lì)偶像崇拜,但不鼓勵(lì)盲目崇拜,失去理性而不分青紅皂白的偶像崇拜,很可能會(huì)招來(lái)災(zāi)難(你瞧瞧我們臺(tái)灣的政壇,不正是如此)。
          這個(gè)世界盲目崇拜偶像的人太多了,比方說(shuō):幾周前,我在電視上看到日本舉辦一個(gè)活動(dòng),不是簽名會(huì),不是握手會(huì),而是令人匪夷所思的“摑臉會(huì)”:一堆日本人排隊(duì)讓摔角明星豬木狠狠地?fù)澏猓ㄕ娴拇虻煤艽罅Γ粨澓筮€笑臉盈盈地頻頻稱(chēng)謝。崇拜偶像可以崇拜到這種地步,在我看來(lái)是很不可思議的。我就不一樣了,這么說(shuō)好了,雖然我很崇拜人稱(chēng)Java之父的James Gosling,但如果James Gosling 摑我耳光的話,翻臉比翻書(shū)還快的我,肯定馬上回敬他一臉奶油派,并且從此變節(jié)改用C#。
          同以前一樣,此次的文章中要介紹的偶像也是四位,James Gosling 正是其中一位。James Gosling是名校卡內(nèi)基梅隆大學(xué)(Carnegie-Mellon University)的信息科學(xué)博士,目前是Sun Microsystems的副總裁。他設(shè)計(jì)過(guò)許多系統(tǒng),包括了衛(wèi)星數(shù)據(jù)采集系統(tǒng)、多CPU版的Unix、編譯器、電子郵件系統(tǒng)、窗口管理系統(tǒng)。他還自己寫(xiě)了一套“所見(jiàn)即所得”(WYSIWYG)的Unix平臺(tái)文字編輯器“Gosling Emacs”。他到Sun工作之后,早期是NeWS窗口系統(tǒng)的首席工程師,后來(lái)是Java語(yǔ)言、編譯器、和虛擬機(jī)器的原創(chuàng)者,所以常被稱(chēng)為“Java 之父”。目前他正在設(shè)計(jì)Java實(shí)時(shí)系統(tǒng)(real-time system),也對(duì)軟件開(kāi)發(fā)工具有濃厚的興趣。
          James Gosling是一個(gè)很幽默的人,常常會(huì)親自搞笑,在這個(gè)毫無(wú)情趣的信息圈子可謂相當(dāng)難得。參加過(guò)今年Taiwan JavaTwo的人應(yīng)該都看過(guò)他的搞笑影片,他甚至也在1998年的JavaOne上演一段親手拿奶油派砸比爾·蓋茲的戲碼,當(dāng)然這個(gè)比爾·蓋茲并非本人,只是一個(gè)戴上比爾·蓋茲橡膠頭套的演員,真是反應(yīng)時(shí)事民心的大膽演出!(注:當(dāng)時(shí)的不久前才發(fā)生比爾·蓋茲在比利時(shí)被人砸奶油派的事件。)
          第二位偶像是Bertrand Meyer,他是ISE(Interactive Software Engineering)公司的CTO,他所設(shè)計(jì)的Eiffel相當(dāng)宏觀,把語(yǔ)言、軟件工程方法、和工具整合在一起。Bertrand Meyer是TOOLS研討會(huì)的主席,他也是數(shù)本程序語(yǔ)言和軟件工程類(lèi)書(shū)籍的作者和編輯。早期他是一家大公司的技術(shù)和管理階層,也曾是加州大學(xué)的教員。他參與過(guò)第一個(gè)版本 Z 語(yǔ)言規(guī)格的設(shè)計(jì)。
          Bertrand Meyer所著的《Object Oriented Software Construction,2nd Ed》一書(shū)得到1997年的JOLT信息圖書(shū)類(lèi)“卓越產(chǎn)品”大獎(jiǎng)。該書(shū)把面向?qū)ο蟮南嚓P(guān)技術(shù),里里外外地剖析得很清楚,難怪厚成那樣。我認(rèn)為面向?qū)ο蟮暮脮?shū)不用看太多本,只要看這本就足夠了。Bertrand Meyer所創(chuàng)的 DBC(Design by Contract)技術(shù)已經(jīng)開(kāi)始影響到其它語(yǔ)言的設(shè)計(jì),Java未來(lái)應(yīng)該也會(huì)引進(jìn)這樣的觀念。
          第三位偶像是Guido van Rossum,他是Python語(yǔ)言的原創(chuàng)者。原是荷蘭人,后來(lái)移居美國(guó)。他是荷蘭阿姆斯特丹大學(xué)的碩士,在荷蘭的時(shí)候,參與過(guò)ABC語(yǔ)言的設(shè)計(jì)實(shí)做,也參與過(guò)一套分布式操作系統(tǒng)的設(shè)計(jì)(Amoeba)。后來(lái)設(shè)計(jì)了Python語(yǔ)言。Python語(yǔ)言創(chuàng)立至今已經(jīng)十一年了,也漸漸地變成一個(gè)相當(dāng)受歡迎的語(yǔ)言,但他仍持續(xù)不斷地在研究改進(jìn)Python。1999年五月時(shí),他與Donald Becker同時(shí)得到 Dr. Dobb's Journal的程序設(shè)計(jì)卓越獎(jiǎng)(1999 Excellence in Programming Award)。
          去年五月以前,他在CNRI(the Corporation for National Research Initiatives)工作,帶領(lǐng)一個(gè)研究團(tuán)隊(duì)研究 Python在無(wú)線通訊上的應(yīng)用,兼任Python Consortium(一個(gè)專(zhuān)司倡導(dǎo)Python的組織)的領(lǐng)導(dǎo)人。最近一年多,他開(kāi)始為Digital Creations(Zope 的公司)工作,擔(dān)任PythonLabs 的領(lǐng)導(dǎo)人。目前他正在進(jìn)行一個(gè)項(xiàng)目,叫做CP4E(Computer Programming For Everybody),計(jì)劃把Python這套易學(xué)好用的語(yǔ)言推廣給每個(gè)人。CP4E也正在設(shè)計(jì)一個(gè)好用的工具來(lái)幫助程序設(shè)計(jì)的初學(xué)者與高手使用 Python。
          第四位偶像是Carl Sassenrath,他是REBOL科技公司的創(chuàng)始者,也是該公司的CTO,致力于簡(jiǎn)化程序設(shè)計(jì)和軟件操作的復(fù)雜度。他認(rèn)為MS-Windows、C++、TCP/IP、HTML等現(xiàn)在流行的技術(shù)都是junk(垃圾),這些垃圾的設(shè)計(jì)者總是把事情搞得太復(fù)雜。他的理念是:軟件應(yīng)該使用起來(lái)很直觀,簡(jiǎn)單的事就該簡(jiǎn)單地做到,但仍要保有做到復(fù)雜的事的能力。我相當(dāng)喜愛(ài)Carl Sassenrath設(shè)計(jì)出來(lái)的 REBOL,它的確是簡(jiǎn)單、占空間很小、跨平臺(tái)、又有許多創(chuàng)意(比方說(shuō)程序方言)。值得在程序語(yǔ)言、編譯器設(shè)計(jì)、以及操作系統(tǒng)的教科書(shū)記上一筆。
          在很早的時(shí)候,Carl Sassenrath就設(shè)計(jì)并實(shí)做出深受好評(píng)的AmigaOS(Motorola CPU上的多任務(wù)操作系統(tǒng))。他并領(lǐng)先開(kāi)發(fā)多套多媒體軟件產(chǎn)品,包括了STB(Set-Top Box,視訊控制盒)、CDTV、程序語(yǔ)言、以及數(shù)字剪輯編輯工具……等。他任職過(guò)的公司包括Apple、Commodore Amiga、以及Hewlett-Packard。Carl有加州大學(xué)的電子工程和信息科學(xué)學(xué)士學(xué)位。
          這四個(gè)偶像剛好都是屬于不同的族裔,而且都是重要程序語(yǔ)言的設(shè)計(jì)者,貢獻(xiàn)非常卓越。相較于這四位理論基礎(chǔ)與實(shí)務(wù)經(jīng)驗(yàn)都如此杰出的偶像,再反觀我們自己,國(guó)內(nèi)的偶像理論懂得不多,也沒(méi)做過(guò)什么了不起的項(xiàng)目,莫名其妙就被奉為偶像(我說(shuō)的是我自己,其它人請(qǐng)勿對(duì)號(hào)入座),真是怪事一樁。
          現(xiàn)在出版業(yè)也有許多偶像,他們喜歡在新書(shū)發(fā)表時(shí)辦簽名會(huì)。O'Reilly可能是從這里得到靈感,他們告訴我,以后我如果在O'Reilly出版自己寫(xiě)的書(shū),他們可以幫我在誠(chéng)品書(shū)局舉辦新書(shū)簽名會(huì)。對(duì)于他們這樣的想法,我期期以為不可。都什么時(shí)代了,還在辦 LKK 的簽名會(huì),實(shí)在是很落伍,我希望O'Reilly能順應(yīng)時(shí)代的潮流,讓我把“簽名會(huì)”改成“摑唱會(huì)”(“摑臉會(huì)”加上“簽唱會(huì)”),移師西門(mén)町舉行,相信自動(dòng)來(lái)討打的善男信女一定不少,我也一定會(huì)展現(xiàn)出“能摑善唱”的一面,邊摑邊唱,表現(xiàn)得令大家刮目相看的。




          偶像崇拜(四)


          受到美國(guó)和伊拉克戰(zhàn)爭(zhēng)所帶來(lái)的恐怖威脅影響,今年的奧斯卡頒獎(jiǎng)典禮破天荒地取消星光大道,讓許多喜歡在紅地毯旁欣賞偶像風(fēng)采的影迷,大失所望。

          由張藝謀執(zhí)導(dǎo),頗受全球華人矚目的電影英雄(Hero),入圍今年奧斯卡最佳外語(yǔ)片。Hero 除了是「英雄」的意思,也常作「偶像」解,且比 idol 或 icon 更常用。例如,Bette Midler 在電影 Beaches(情比姊妹深)里面的那首「Wind Beneath My Wings」,有句歌詞「Did you ever know that you're my hero? And everything I'd like to be?」,正是「偶像」的意思。

          這次的文章要介紹的幾個(gè)偶像,正是我努力學(xué)習(xí)的對(duì)象(everything I'd like to be)。他們共同具備的特色是:能夠與時(shí)俱進(jìn),不會(huì)在新技術(shù)出現(xiàn)后被淘汰。

          首先介紹的是大名鼎鼎的 Charles Petzold。他是 Windows 程序設(shè)計(jì)的鼻組,甚至是 OS/2 程序設(shè)計(jì)的鼻組。十多年前,在 Windows 3.0 的時(shí)代,我就已經(jīng)開(kāi)始買(mǎi)他的《Programming Windows》一書(shū)了,目前該書(shū)已經(jīng)出版到第五版,我?guī)缀跏敲恳话娑假I(mǎi),我甚至有幸在大學(xué)時(shí)期與人合譯該書(shū)第三版。在進(jìn)入 .NET 時(shí)代后,Charles Petzold 也寫(xiě)了一本《Programming Windows with C#》。這么多年過(guò)去了,Charles Petzold 依然維持 Windows GUI 程序設(shè)計(jì)首席作家的地位。

          盡管 Charles Petzold 是 Windows GUI 程序設(shè)計(jì)首席作家,但是他顯然對(duì) MFC 很不捧場(chǎng),他說(shuō):「I never like MFC. Ever since it was introduced, I thought it was poorly designed and barely object oriented.」(我從來(lái)就不喜歡 MFC,從一開(kāi)始就不喜歡,我認(rèn)為它的設(shè)計(jì)不良,且?guī)缀醪荒芩闶菍?duì)象導(dǎo)向)。也因此,他未曾寫(xiě)過(guò) MFC 的書(shū)。

          許多人都以為 Charles Petzold 只寫(xiě) Windows 的書(shū),其實(shí)他也寫(xiě)了一本計(jì)算器概論的書(shū),名為《Code》,等于是把信息系好幾門(mén)課的精華濃縮在一起,寫(xiě)得相當(dāng)淺顯易懂。如果你不是信息系科班出身,我建議你可以讀一讀這本書(shū),會(huì)有很大的幫助。

          第二位偶像是 Jeffrey Richter:Jeffrey Richter 是 Windows System 程序設(shè)計(jì)的頭頭。我記得他好像年輕時(shí)在 Borland 待過(guò),但是未獲重用,后來(lái)到 Microsoft 之后,反而開(kāi)始竄紅。從 Windows 3.0 開(kāi)始到現(xiàn)在,Jeffrey 寫(xiě)書(shū)也超過(guò)十年了,每一本都對(duì) Windows 核心有很精彩的剖析,顯示出 Jeffrey Richter 真才實(shí)學(xué),絕非光是吃技術(shù)老本或靠塑造形象的許多其它作家能比。

          Jeffrey Richter 的主要領(lǐng)域是 Windows System Programming,是該領(lǐng)域最重要的作家。Jeffrey 的書(shū)提供許多不凡的見(jiàn)解,深入的剖析,和第一手的數(shù)據(jù),所以他的書(shū)一直都是我的最?lèi)?ài)。我無(wú)法一一介紹他的每一本書(shū),因?yàn)樗臅?shū)相當(dāng)多,而且每一本都很深入,帶給我很大的收獲。

          在進(jìn)入 .NET 時(shí)代之后,Jeffrey Richter 依然以一本《Applied Microsoft .NET Framework Programming》讓大家更深入了解 .NET,我認(rèn)為這是 .NET 語(yǔ)言和 CLR 最重要的一本書(shū)。目前 Jeffrey Richter 是 Wintellect 的當(dāng)家支柱。他經(jīng)常在 MSDN 上發(fā)表文章,每一篇都是經(jīng)典。

          第三位偶像是 Jeff Prosise,他從 DOS 時(shí)代就開(kāi)始寫(xiě)書(shū)了,早期寫(xiě)了好幾本 DOS 領(lǐng)域的書(shū),在 MFC 正流行的時(shí)候,他寫(xiě)了一本 MFC 的書(shū)《Programming Windows 95 with MFC》(1996 年出版),現(xiàn)在則是寫(xiě) .NET 的書(shū)《Programming Microsoft .NET》。我最喜歡的 MFC 的書(shū)正是 Jeff Prosise 寫(xiě)的這本,而不是 David J. Kruglinski 所著的《Inside Visual C++》,我覺(jué)得前者寫(xiě)得比后者更平順、好讀、清晰。

          Jeff Prosise 曾經(jīng)寫(xiě)了一本《How Computer Graphics Work》,這是當(dāng)時(shí) Ziff-Davis 出版社很暢銷(xiāo)的「How ...Works」系列。該系列以精致的插畫(huà),簡(jiǎn)單易懂的敘述著稱(chēng),主要的讀者對(duì)象是社會(huì)大眾,而非信息專(zhuān)業(yè)人士。我想,或許「簡(jiǎn)單易懂」就是 Jeff Prosise 慣有的風(fēng)格吧!

          進(jìn)入 .NET 的時(shí)代,Jeff Prosise 的定位似乎比較偏向 ASP.NET。他寫(xiě)的那本《Programming Microsoft .NET》里面有大半的章節(jié)是和 ASP.NET 有關(guān),應(yīng)該改名為《Programming ASP.NET》。Jeff Prosise 現(xiàn)在已經(jīng)不像 90 年代初期那樣多產(chǎn),最近的這本 .NET 書(shū)距離他的上一本書(shū)《Programming Windows 95 with MFC》居然有六年之久。但無(wú)論如何,我還是很高興看到 Jeff Prosise 又重出江湖。

          第四位偶像是 Ted Neward。我超喜歡 Ted Neward 的,覺(jué)得有他一種親切感,因?yàn)樗膶W(xué)習(xí)歷程和我很像:先是 C++,然后 Win32,然后 Borland OWL,然后 Java,然后 Enterprise Java,然后 .NET。我常逛他的網(wǎng)站 The Mountain of Worthless Information,從哪兒得到不小的收獲。我建議你有空也去逛逛。

          Ted Neward 是 Manning 出版社的元老級(jí)作者,Manning 最早出版的書(shū)正是 Ted Neward 的《Core OWL》與《Advanced OWL》(一本入門(mén),一本進(jìn)階)。有趣的是,當(dāng) Ted Neward 的 OWL 這兩本書(shū)快出版時(shí),Borland 居然宣布停止開(kāi)發(fā) OWL。Ted Neward 花了這么多心血,居然換來(lái)這樣的結(jié)果。OWL 本來(lái)市場(chǎng)就很小,又被 Borland 宣布死刑,Ted Neward 的這兩本書(shū)賣(mài)得奇慘。

          后來(lái),Ted Neward 轉(zhuǎn)向 Java,在 Manning 出版了一本很受好評(píng)的 Server-Side Java 書(shū)籍。接著,Ted Neward 開(kāi)始和 O'Reilly 合作,出版了好幾本與他人合著的 .NET 書(shū),包括了《C# in a Nutshell》、《VB.NET Core Classes in a Nutshell》、《C# Language Packet Reference》、《Shared Source CLI Essentials》。其中,《Shared Source CLI Essentials》一書(shū)是剖析 Rotor 的第一本書(shū),2003 年三月底出版,目前我手上有此書(shū)的數(shù)個(gè)章節(jié),讀起來(lái)很過(guò)癮,對(duì)于我的 .NET 功力提升也有幫助。

          這次介紹的四位技術(shù)作家,都是屬于長(zhǎng)青樹(shù),在軟件技術(shù)圈子,這可是很不容易的。我常常覺(jué)得,等到哪天 Java 功成身退,被其它技術(shù)取代之后,我或許會(huì)變成一只玩不出新把戲的老狗,就這么會(huì)被淘汰了也說(shuō)不定。

          想成為技術(shù)上的長(zhǎng)青樹(shù),必須在既有的技術(shù)上持續(xù)鉆研,還得隨時(shí)留意新技術(shù),并適時(shí)拋棄一些技術(shù)上既有的意識(shí)型態(tài)。唉!還真是挺辛苦的。


          本文作者:蔡學(xué)鏞
          文章出處:Sleepless 2.0
          張貼日期:2003/3/24

          posted on 2006-07-10 15:12 rosial 閱讀(606) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 蔡學(xué)鏞

          主站蜘蛛池模板: 勐海县| 斗六市| 凌云县| 区。| 伊吾县| 江北区| 霍州市| 封丘县| 大冶市| 天水市| 信丰县| 武宁县| 海盐县| 曲沃县| 宁河县| 集贤县| 白山市| 黔西| 五台县| 聂荣县| 威远县| 临颍县| 张家口市| 吴旗县| 嘉鱼县| 图木舒克市| 西充县| 开鲁县| 仁怀市| 宁阳县| 游戏| 密山市| 新化县| 玉田县| 平武县| 长子县| 赤峰市| 青冈县| 东丰县| 静安区| 徐汇区|