Essential C++中文版——滿漢全席之外
滿漢全席之外
Stanley B. Lippman 所著的C++ Primer 雄踞書壇歷久不衰,堪稱C++最佳教科書。但是走過十個年頭之後,繼1237 頁的C++ Primer 第3 版,Lippman 又返璞歸真地寫了這本276 頁的Essential C++。有了滿漢全席,為何還眷顧清粥小菜?完成了偉大的鉅著,何必回頭再寫這麼一本輕薄短小的初學者用書呢?
所有知道Lippman 和C++ Primer 的人,臉上都浮現相同的問號。
輕薄短小並不是判斷適合初學與否的依據。Lippman 寫過Inside the C++ Object Model,280 頁小開本,崩掉多少C++老手的牙。本書之所以號稱適合初學者,不在於輕薄短小,在於素材選擇與組織安排。
關於Lippman 重作馮婦的故事,他自己在前言中有詳細的介紹。他的轉折,他的選擇,他的職責,乃至於這本書的綱要和組織,前言中都有詳細的交待。這方面我不必再置一詞。
身為C++ Primer, 3rd Edition 的譯者,以及多本進階書籍的作者,我必須努力說服自己,才能心甘情願地將精力與時間用來重複過去的足跡。然而,如果連Lippman 都願意為初學者再鋪一條紅地毯,我也願意為初學者停留一下我的腳步。
我是一名資訊教育者,寫譯書籍,培訓人員,在大學開課……。我真正第一線面對大量學習者。藉此機會我要表達的是,所謂“初學者”實在是個過於籠統的名詞與分類(呃,談得上分類嗎)。一般所謂“初學者”,多半想象是大一新生程度。其實C++語言存在各種“初學者”,有13 歲的,有31 歲的(當然也有41 歲的)。只要是第一次接觸這個語言,就是這個語言的初學者,他可能才初次接觸計算機,可能浸淫Pascal/C 語言十年之久,也可能已有Smalltalk/Java 三年經驗。有人連計算機基本概念都沒有,有人已經是經驗豐富的軟體工程師。這些人面對C++,學習速度、教材需求、各人領悟,相同嗎?
大不同矣!
每個人都以自己的方式來詮釋“初學者”這個字眼,並不經意地反映出自己的足跡。初學者有很多很多種,“初學者”一詞卻無法反映他們的真實狀態。
固然,輕薄短小的書籍乍見之下讓所有讀者心情輕鬆,但如果捨棄太多應該深入的地方不談,也難免令人行止失據,進退兩難。這本小書可以是你的起點,但絕不能夠是你的終站。
作為一本優秀教科書,輕薄短小不是重點,素材選擇與組織安排,表達的精準與閱讀的順暢,才是重點。
作為一個好的學習者,背景不是重點,重要的是,你是否具備正確的學習態度。起步固然可從輕鬆小品開始,但如果碰上大部頭鉅著就退避三舍逃之夭夭,面對任何技術只求快餐速成,學程式語言卻從來不編寫程式,那就絕對沒有成為高手乃至專家的一天。
有些人的學習,自練一身銅筋鐵骨,可以在熱帶叢林中披荊斬棘,在莽莽草原中追奔逐北。有些人的學習,既未習慣大部頭書,也未習慣嚴謹格調,更未習慣自修勤學,是溫室裡的一朵花,沒有自立自強的本錢。
章節的安排,篇幅的份量,索引的保留,習題加解答,以及網上的服務,都使這本小書成為自修妙品、C++專業課程的適當教材。誠摯希望《Essential C++中文版》的完成,幫助更多人獲得C++的學習樂趣——噢,是的,OOP(物件導向程式設計)可以帶給你很多樂趣,我不騙你 。
侯捷
2012/09/22
本文節選自《Essential C++中文版》一書
[美] Stanley B.Lippman 著
侯捷 譯
電子工業出版社出版
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13164110/viewspace-769288/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 陣列方法之滿漢全席陣列
- P4171 [JSOI2010] 滿漢全席 2-SATJS
- Essential C++C++
- C++ 的成功屬於意料之外C++
- vue全席(1)-實現對普通物件的監測Vue物件
- A Brief Look at C++ 中文版 (轉)C++
- 機器視覺之外,機器人的感知補全計劃視覺機器人
- 無棧創業:全棧創業之外的另一種嘗試創業全棧
- Google C++ 編碼規範(中文版)GoC++
- JonathanLewis新書:Oracle Core: Essential Internals for DBAs and Developers新書OracleDeveloper
- eclipse中文版自動補全設定Eclipse
- Dell OpenManage Essential 監控告警設定 - windows mailWindowsAI
- Essential Windows Workflow Foundation(Windows 開發流程基礎Windows
- MySQL之外來鍵MySql
- 公鑰加密之外加密
- C++中的&引用符號全解C++符號
- C++實現tab補全(Windows限定)C++Windows
- Essential_SQLAlchemy2th學習筆記之Core模組SQL筆記
- Essential Silverlight翻譯連載(3、4章)
- Essential Silverlight翻譯連載(5、6章)
- OReilly.Essential.System.Administration.3rd.Ed chm
- 全開源C++ DirectUI 介面庫SOUI 3.0更新C++UI
- C++ While 和 For 迴圈:流程控制全解析C++While
- 技術之外的成長
- 設計模式之外觀模式設計模式
- ORACLE學習之外部表Oracle
- Top Ten Traps in C# for C++ Programmers中文版(下篇) (轉)C#C++
- 最牛WinRT使用者介面控制元件Essential Studio for WinRT控制元件
- Coder Essential之客戶端知識索引(iOS/Android/Web)客戶端索引iOSAndroidWeb
- ZY Player 2.4.8中文版 全網資源影片播放器播放器
- PHP設計模式之外觀模式PHP設計模式
- Swagger之外的選擇Swagger
- go設計模式之外觀模式Go設計模式
- 程式碼之外(1)寫排期
- Java設計模式之外觀模式Java設計模式
- margin系列之外邊距摺疊
- Oracle之外部表警告日誌Oracle
- 北上廣之外的IT技術人生