说起C语言方面的书,你最先想到的是哪一本?不论图书本身是好是坏,反正我想到的是谭浩强的《C程序设计》——它已然是一部“圣经”了。那么,为什么赵岩老师还要写一本《C语言点滴》呢?带着这个问题,我翻开了这本书。
等一等,我为什么要读这本书?赵老师说,本书的读者对象是各种层级的C语言学习者。我已经学过C/C++,我也不想再学了,不是因为我自命不凡,而是因为我已经不再是程序员了……读这本书,也许我只是为了解开上面的疑惑吧。还有一个问题是,在Java已经成为“2013年最吃香技能”的形势之下,我们为什么还要学C语言呢?C语言真的有用吗?程序员大牛Jeff Atwood也说,“生命中最困难的,是想清楚你真正想要做的事情,而不是学上一堆假设将来会有用的东西。”——很期待赵老师在书中给出解答;他也做到了!
都说赵老师幽默,当我读完了前两章,我便深刻体会到了。虽然本人与赵老师素未谋面,但读他的书感觉就像听一位老朋友说话那样亲切。有这么一位风趣的老师带领着走进C语言编程殿堂,我禁不住羡慕赵老师的学生们——你们有多么幸运啊!赵老师的文字很潮,我特别喜欢他穿插在正文里的各种段子(尽管很多段子未必是他的原创),诸如:
- 程序员喜欢穿牛仔裤和T恤衫……让别人一看就知道自己是干什么的,这样小偷不偷,女孩不理,连狗都不咬……嫁人要嫁程序猿,钱多话少死得早。
- 要想在中国出人头地,必须要领会老子、庄子和孙子的精神,简称“老庄(装)孙子”精神。
- 如果程序是一个人,正确的数据结构就像是强壮的体格,高效的算法就像是高尚的性格,而语言,只是一件外衣而已……纠结于语言的程序员,就像是只关注外衣是否漂亮的小姑娘。凡是能够流传千古的作品,你会发现都是不穿衣服的……
- 这个世界上只有两种产品,一种是没人用的,另外一种是被人骂的。(这句话用在自己开发的产品饱受用户抱怨时自我安慰多好啊!)
- 编程序中不认真你就输了,生活中认真你就输了!
赵老师自己也说了,“写书和教课一样,没必要总板着脸,以为只有这样才有权威,才有人尊重。人们喜欢你,才会尊重你;人们佩服你,你才会有权威。而如果人们只是怕你,大部分只是因为你的位置,怕的不是你,而是你的位置而已。”说得不错吧?这一点对于学生来说可能不会引起共鸣,但我读到这的时候,觉得它特别有警示作用——仅凭这一点,已不枉我翻阅这本书了!
上面提到,如今的我已经不再写程序,因此我也不太关注C语言的细节了。于是,对于第3~ 13章的内容,我只是匆匆扫了一眼。如果你还是在校学生,或者是C语言的初学者,这一部分恰恰是你要精读的,因为这些内容是赵老师多年教学积累下来的经验,是整本书的精华所在。赵老师给出的读书方法是,“在阅读本书的时候,你手中应该有一本教材。当你对教材中的某些地方不太明白,或者是实际编程的时候遇到了一些问题,而教材又没有给出相关的答案的时候,这本书就是你最好的辅助教材。”我相信,赵老师在书中会给你指点迷津,他对C语言重要知识点的讲解必定会让你豁然开朗。
最后一章叫“进阶之路”,我也读了。赵老师颇有师者风范,鼓励大家独立思考,处处充满着人性的关怀。当你学习C语言小有所成时,他还不忘给你指明新的方向,以免让你成为井底之蛙。赵老师说,“任何学科、任何工作,抛去风光的外衣,都有一个坚硬的核,看你能不能咬穿它”,勉励大家不畏艰难,要像下面这个段子里的小狗那样一直往前走:
小狗问妈妈,幸福在哪里,妈妈说:“幸福就在你尾巴上。”小狗不解,妈妈说:“如果你一直追幸福,就只会在原地打转;如果你一直往前走,幸福就会跟着你了。”
书到用时方恨少,程序写起来才知自己根基不牢。(当然,后半句是我杜撰的!)我赞成多读书,尽管很多程序员已经不读书了。在我看来,学好C语言就是打好自己成为职业程序员的根基。有了《C语言点滴》的陪伴,你的学习过程就不至于那么无趣。
赵老师在本书的前言里提到了他的理想:以后某个同学问学习C语言用什么书时,大部分人都会对他说,“选某某教材,另外再加上赵岩的《C语言点滴》。”我觉得这个理想很低调、奢华、有内涵!这本书的品质决定了,这个理想并不遥远。最起码,等我儿子长大后想学编程的时候,我会递给他这本书的!