看板CompBook
标 题Re: [转录] 简介三本 C++ 的书
发信站SayYA 资讯站 (Thu Mar 10 10:03:01 2005)
转信站ptt!ctu-reader!news.nctu!SayYa
※ 本文转录自 [Programming] 看板
发信人:
[email protected] (汀) 看板: programming
标 题: Re: C++书介绍
发信站: 政大狂狷年少 (2005/03/09 Wed 14:31:55)
※ 引述《[email protected] (天天天蓝)》之铭言:
> ※ 引述《[email protected] (蒙ꤠ蒙ꤠ布丁甜)》之铭言:
> > C++ Primer 中译本
> > 侯俊杰
> 这本书若是给初级者学 是害了他
> 这本书在我看来不能当教科书 仅能当成参考书 也就是如果你有
> 哪个地方不太清楚的 可以查索引 直接到相关的地方看
> 不过如果是这样 还不如直接拿 C++ 之父所写的书当参考书
> 这本书在我看来仅能摆在书柜上当藏书使用 :-)
其实我觉得还好,
我是 C++ Standard 制订出来以後 C++ Primer 出中译本才开始学 C++,
所以我第一本 C++ 的书就是 C++ Primer,
不过我也承认当时我已经有 C 的完整基础和一般性的 language 共通概念,
所以要看对初学者的定义是怎样下的。
如果所谓初学者是连程式设计都没碰过,
那无论 C++ Primer 还是 The C++ Programming Language 都不好,
Essential C++ 也不好,
老实说我还没看过什麽 C++ 的书是真正适合初学者又不会让他误入歧途的,
所以我的结论其实是 C++ 这个语言本身就不适合没程式设计经验的人学,
我当然知道这个论点很特立独行,
但这是我翻阅数十本 C++ 书籍,
加上长期实作,
以及阅读新手、老手撰写的 C++ 程式码,
所下的结论。
C++ Primer 的作者当初取 Primer 之意本身就是希望能带人入门,
而後他因为工作需求,接触到对他而言很陌生的 perl 时有感而发,
转而꜠定 C++ Primer 对初学者的适用性并出一本精简版,也就是 EC++,
但它的定位点也不像是作为「第一本程式设计书籍」而设计的,
而是「第一本 C++ 程式书籍」的角度来写的,
这本书跟明显在序言提出此点的 The C++ Programming Language 本质相同。
如果所谓初学者是有程式设计经验但没接触 C++ 的,那麽...
我也曾经为了教 C++ 新手而特别买了一本 EC++ 来读,
到最後我还是觉得这本讲得太过精简了,
而且 EC++ 让新手读뀠来的感觉其实跟重点式读 C++ Primer 差不多,
看不懂的还是看不懂,看得懂的人大都只是懒得看 C++ Primer,
其实看 C++ Primer 还是都看得懂,只是懒而已,
这让我发觉到其实不是 C++ Primer 不适合 C++ 新手,
而是很多 C++ 新手没有耐性跟恒心去读完它。
没翻完 C++ Primer 或 The C++ Programming Language 的人,
有很多看不懂 C++ compiler 吐出来的 error message,
不清楚所谓的多载决议程序,不清楚什麽是候选函式,
也不清楚 template 引数推导程序,
写到最後怪 C++ compiler 很烂或有 bug 的一大堆,
(结果不是他想要的,不然就是来个 ambiguous 什麽的)
要不就是讲一句 C++ 程式很难除错就不碰了。
如果真的要我讲哪些书该给任何形式的新手读,
我还是会选择 The C++ Programming Language 或 C++ Primer,
因为我认为要学一个高阶语言,
对於变数(variable)如何宣告(declare)、定义(define),
资料型别(data type)的名称和可表示范围,
认清何谓运算式(expression),何谓叙述(statement),
运算式可由哪些运算子(operator)搭配怎样的运算元(operand)构成,
是学一个语言的基础认知,而这两本都花了很大的篇幅在讲,
我觉得不管是哪种初学者花时间去看它都很值得,
理想上是还要能介绍多档编译的环境下要怎样规划程式,
这是 C++ Primer 不及 The C++ Programming Language 的地方,
所以要我二选一的话,我会挑 The C++ Programming Language。
另外就是很多人蛮ꤠ怪的,不喜欢看书的前言跟序,
C++ Primer 言明 Chapter 2 是新手可以跳过,
但是却听到一堆人说他看到 Chapter 2 就觉得这本书太难看不下去,
这点真的就是很糟糕,不依照作者的指引乱读还怪书不好读。
我实在不愿意建议其它的书籍,
因为我看过很多书要不就是太旧要不就是乱教,
然後就会看到很多新手,
写出会让 C++ 爸爸看到会吐血的 code,
不然就是能让 C++ 标准委员会的委员们公干的 code,
我想熟 C++ 又看过各种号称是 C++ code 的人,
应该很清楚我在说什麽...
所以我的建议是,
The C++ Programming Language (Special Edition) 当课本读,
C++ Primer (3/e) 当规格书耐心读完,
还有附注一点,
C++ Primer Plus 跟 C++ Primer 是完全不同的书,
内容和编排大不相同,原作者也不同,译者也不同,
差一个字差很多,C++ Primer Plus 不要买来读,
比 C++ How to Program 这本更不建议看...
--
Name: Tseng, Ling-hua E-mail Address:
[email protected]
School: National Chung Cheng University
Department: Computer Science and Information Engineering
Researching: Porting GCC and Implementing VLIW instruction scheduler in GCC
Homepage:
https://it.muds.net/~uranus
--
╔═══╗ ┼────────────────────────╮
║狂狷 ║ │
* Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮
║ 年少║ ┼╮
< IP:140.119.164.16 > ╰─╮
╚╦═╦╝ ╰
* From:218-171-149-250.dynamic.hinet.net
─╨─╨─ KGBBS ─ ◎ 遨翔"BBS"的狂狷不驯;属於年少的轻狂色彩 ◎
◆ Modify: 05/03/10 10:03:01 <202-39-18-142.hinet-ip.hinet.net>