《C++ Prmer》+《我的第一本C++书》=一整套完备的C++参考书
《C++ Prmer》+《我的第一本C++书》=一整套完备的C++参考书
首先,向经典致敬!
一位《我的第一本C++书》的读者向我反馈说,为了学习C++,他最开始买了一本经典的《C++ Prmer》,可是硬着头皮看了不到四分之一,就再也看不下去了。只好将其放在书架上,束之高阁了。后来在书店看到《我的第一本C++书》,翻看了几页觉得不错就买了,等到后来仔细看了之后,觉得讲得不够深入细致,才突然想起那已经被灰尘做了封面的《C++ Primer》,于是将其找出来,两本书结合起来看,这才发现原来看《C++ Primer》看不懂的地方,现在在《我的第一本C++书》的帮助下,已经一清二楚了;原来只是从《C++ Primer》中学了不少C++语法,看了《我的第一本C++书》之后,就知道这些语法到底该在实际的开发中如何应用了。他发现,将两本书结合来看,真是相辅相成,相得益彰。
听到这个反馈意见,开始我也很奇怪,后来我也思考了,我也发现,无论是从内容结构上,还是从语言风格上,将这两本书结合起来,确实能够做到 相互补充,相互促进,能够产生“1+1>2”的效果。
首先从内容上,作为一本入门书,《C++ Primer》包含了C++的方方面面,C++的任何一个旮旯都在这本书的范围之内。这就导致其厚度无疑会让每一个C++初学者头疼,我身边有这本书的朋友不少,但是能够真正坚持看完本身的只有寥寥几个。《我的第一本C++书》同样是作为入门书,吸取了这个教训,既然是入门书,就要做到足够简单,足够精炼,他只介绍了C++中最常用,最实用的知识 ,这也让他读起来足够轻松。当然,我这里也不是说《C++ Primer》所介绍的知识没有荣,只是一开始就让初学者接触那些高深的不太常用的知识,有些不太符合我们学习一门语言的规律。而将两本书结合起来,先利用《我的第一本C++书》入门,建立起对C++的兴趣,然后再利用《C++ Primer》补充完善自己的知识体系,这样才更加符合我们从简单到复杂的学习规律。
其次,从语言风格上,《C++ Primer》是一部翻译作品,其原著我没有读过,其语言也应该是清新隽永的,但是因为中英文的差异,在翻译的过程中,可能丧失了这种语言的特性,结果导致中文版读起来不是那么让人感觉清新自然,再加上书本的厚度,很容易就让人放弃了。而《我的第一本C++书》始终坚持为初学者(无论你是刚刚开始学习C++,还是已经有其他语言基础转而学习C++)而写作的初衷,坚持语言的生动活泼有趣,让C++的学习不再是一件枯燥的事情。书中这样的例子有很多:
另外一方面,在对C++知识的讲解上,《C++ Primer》作为一本经典,对知识的讲解当然是非常严谨的,但是对于初学者而言,这样的严谨态度,反倒是可能让读者产生一种对“C++太难学”的误解,这是我们不希望看到的。为了树立C++平易近人的形象,本书提供了大量的插图,丰富的比喻,尽量让抽象的C++知识形象起来,让读者能够对C++有一个形象的认识。在这本书中你会看到,C++时而化作一位优雅绅士,向你介绍STL;时而化作一位卖报的小行家,向你介绍C++世界发生的几件新鲜事。在这本书中,C++不再是伴着面孔的一位严肃的老师,而是你的一位朋友,一位平易近人,向你娓娓地讲解各种奇闻异事的好朋友。看完《我的第一本C++书》之后再去看《C++ Primer》中的相应章节,会对相应章节有更加深入的认识和理解。
在其次,在实践性上,《C++ Primer》提供了大量的例子,以供对C++语法的练习和掌握,但是却可能忽视了实践,读者进行了大量的练习,可是却不知道如何在实践中应用这些知识。而《我的第一本C++书》则更多地从实践角度出发,介绍这些C++知识在实践中是如何应用的。书中的例子,都是来自于实践的实际代码的简单改变,即本上能够让读者看到实际的开发中的C++到底是什么样子。而书中介绍的各大公司的笔试题目,不仅是对C++知识的具体应用,也是你敲开各大公司的一块敲门砖。基础的练习很重要,来自实践的知识也必不可少。所以,将两本书结合起来,既可以练习基础知识,也可以知道这些知识在实践中是如何应用的。这样才达到了学以致用的目的。
总之,将《C++ Primer》和《我的第一本C++书 》结合起来,可以互相取长补短,你将得到一本更加通俗易懂的《C++ Primer》——借助于《我的第一本C++书》对C++知识的形象生动的讲解,可以让《C++ Primer》更容易理解,更富于实践性;而借助于《C++ Primer》的庞大知识体系,《我的第一本C++书》也可以更加充实而完善。
所以,这两本书可以天然地结合在一起,成为一整套完备的C++参考书。如果你已经有了一本《C++ Primer》,你一定还需要一本《我的第一本C++书》!
————