最近重读了《编程珠玑》这本书,每次读都有新收获,今天来分享我的读书笔记,以及这本书如何改变了我的编程智慧。

最近,重读,了,《编程珠玑》,这本书,这,已经,是,我,第三遍,读,它,了,但是,每次,读,都,有,新,的,收获,新,的,感悟,真的,是,一本,常读,常新,的,经典,好书。

《编程珠玑》,英文,名,Programming Pearls,作者,是,Jon Bentley,是,编程,领域,的,经典,书籍,之一,被,很多,程序员,奉为,圭臬,我,第一次,读,它,是,在,大学,的,时候,那,时候,刚,学,编程,不久,很多,东西,理解,不,深,只是,觉得,书,里,的,算法,很,巧妙,很,厉害,第二次,读,是,工作,了,几年,之后,那,时候,有,了,一些,实际,编程,经验,再,读,就,有,了,更,深,的,理解,能,体会,到,书,里,的,智慧,和,思想,这次,第三遍,读,又,有,了,新,的,收获,和,感悟,觉得,这本书,真的,改变,了,我,的,编程,智慧,让,我,对,编程,有,了,更,深,的,理解,和,认识。

今天,这篇,文章,就,来,分享,我,的,读书笔记,以及,这本书,如何,改变,了,我,的,编程,智慧。

一、这本书讲了什么

在,说,读书笔记,之前,先,简单,介绍,一下,这本书,讲,了,什么,让,没,读过,的,朋友,有,个,基本,认识。

《编程珠玑》,最早,是,Jon Bentley,在,ACM,的,通讯,上,写,的,专栏,文章,后来,整理,成,书,出版,很,受,欢迎,已经,出,了,好几版,还,出,了,续篇,《编程珠玑2》,内容,很,丰富,也,很,经典。

这本书,不是,一本,传统,的,编程,教材,不,会,系统,地,教,你,某种,语言,的,语法,或者,某种,算法,的,实现,而是,通过,一个个,有趣,的,编程,问题,和,案例,来,讲解,编程,的,思想,和,智慧,教,你,怎么,分析,问题,怎么,设计,算法,怎么,优化,程序,怎么,写出,优雅,高效,的,代码,书,里,的,每个,问题,都,很,经典,也,很,有,代表性,作者,会,从,最,朴素,的,解法,开始,一步步,分析,优化,最后,得到,一个,很,优雅,很,高效,的,解法,整个,过程,就,像,剥,洋葱,一样,一层,一层,地,深入,让,你,看到,编程,的,美,和,智慧,也,让,你,学会,怎么,思考,编程,问题。

书,里,的,内容,很,丰富,涉及,很多,方面,比如,算法,设计,数据结构,性能,优化,代码,调优,测试,调试,程序,设计,等等,但是,核心,都,是,教,你,怎么,思考,怎么,用,智慧,解决,编程,问题,而,不是,死记硬背,算法,和,代码,这,也是,这本书,最,有,价值,的,地方,它,教,你,的,是,渔,而,不是,鱼,是,编程,的,思想,和,智慧,而,不是,具体,的,算法,和,代码,学会,了,这些,思想,和,智慧,你,能,解决,各种,各样,的,编程,问题,而,不,只是,书,里,讲,的,那,几个。

而且,这本书,写,得,很,生动,很,有趣,不,枯燥,作者,的,文笔,很,好,把,复杂,的,编程,问题,讲,得,很,通俗,很,易懂,即使,是,编程,新手,也,能,看,懂,也,能,看,得,进去,不会,觉得,枯燥,这,也是,它,能,成为,经典,的,原因,之一,很多,编程,书籍,都,写,得,很,学术,很,枯燥,看,不,进去,但是,《编程珠玑》,不会,它,很,好读,很,吸引人,让人,手不释卷,想,一直,看,下去。

二、核心思想和智慧

下面,来,分享,我,从,这本书,里,学到,的,核心,思想,和,智慧,以及,它们,如何,改变,了,我,的,编程,方式。

1. 正确理解问题,比着急写代码更重要

这,是,我,从,这本书,里,学到,的,第一,个,也是,最,重要,的,一个,智慧,很多,程序员,包括,以前,的,我,拿到,一个,问题,第一,反应,就是,着急,写,代码,觉得,只要,代码,写,出来,问题,就,解决,了,但是,《编程珠玑》,告诉,我们,正确,理解,问题,比,着急,写,代码,更,重要,很多,时候,问题,理解,错,了,或者,理解,不,全面,写,出来,的,代码,就是,错,的,或者,不是,最优,的,甚至,可能,解决,不,了,问题,白,忙活,一场。

书,里,有,很多,这样,的,例子,比如,最,经典,的,那个,排序,问题,给,一个,文件,里,的,很多,不重复,的,整数,排序,而且,内存,有限,很多,人,拿到,这个,问题,第一,反应,就是,用,快速排序,或者,归并排序,但是,作者,告诉,我们,先,理解,问题,这些,整数,有,什么,特点,范围,是,多少,有没有,重复,内存,限制,是,多少,理解,了,这些,之后,发现,这些,整数,范围,是,1到N,而且,不重复,内存,有限,那么,最,优,的,解法,不是,比较,排序,而是,位图,排序,用,一个,二进制,位,代表,一个,数,存在,就,置1,不,存在,就,置0,然后,遍历,位图,输出,存在,的,数,就,完成,了,排序,这个,解法,比,比较,排序,快,很多,也,省,内存,很多,但是,如果,你,不,先,理解,问题,的,特点,就,着急,写,比较,排序,的,代码,就,想,不,到,这个,更,优,的,解法。

这个,例子,给,了,我,很,大,的,启发,从那以后,我,拿到,一个,编程,问题,不,再,着急,写,代码,了,而是,先,花,时间,理解,问题,分析,问题,的,特点,约束,输入,输出,等等,想,清楚,了,再,动手,写,代码,这样,虽然,看起来,慢,了,一些,但是,实际,上,更,快,因为,想,清楚,了,写,代码,就,很,顺利,也,不,容易,出错,而且,往往,能,想,到,更,优,的,解法,而,不是,写,一个,朴素,的,解法,然后,再,慢慢,优化,效率,反而,更,高。

而且,理解,问题,的,过程,也,能,帮,你,发现,问题,的,边界,情况,和,异常,情况,比如,输入,为空,怎么办,输入,超出,范围,怎么办,有,重复,数据,怎么办,等等,这些,都,需要,在,写,代码,之前,想,清楚,不然,写,出来,的,代码,可能,在,边界,情况,下,出错,或者,处理,不,了,异常,情况,导致,bug,所以,先,理解,问题,真的,很,重要,能,帮,你,写出,更,健壮,更,正确,的,代码。

2. 简洁是智慧的灵魂,优雅的代码比复杂的代码好

这,是,我,从,这本书,里,学到,的,第二,个,智慧,很多,程序员,包括,以前,的,我,觉得,代码,写,得,越,复杂,越,能,体现,水平,越,厉害,但是,《编程珠玑》,告诉,我们,简洁,是,智慧,的,灵魂,优雅,的,代码,比,复杂,的,代码,好,真正,厉害,的,程序员,能,把,复杂,的,问题,用,简单,优雅,的,代码,解决,而,不是,把,简单,的,问题,写,得,很,复杂。

书,里,有,很多,这样,的,例子,很多,问题,作者,最后,给出,的,解法,都,很,简洁,很,优雅,只有,几行,代码,但是,很,巧妙,很,高效,比,那些,写,了,几十行,甚至,上百行,的,复杂,解法,好,很多,比如,刚才,说,的,位图,排序,只有,几行,代码,但是,很,高效,很,优雅,再,比如,书,里,讲,的,旋转,字符串,的,问题,把,一个,字符串,向左,旋转,n位,很多,人,会,写,一个,复杂,的,算法,移动,字符,但是,作者,给出,的,解法,是,三次,翻转,先,翻转,前n位,再,翻转,后面,的,部分,最后,翻转,整个,字符串,就,完成,了,旋转,只有,几行,代码,很,简洁,很,优雅,也,很,高效,让人,拍案叫绝。

这个,思想,给,了,我,很,大,的,影响,从那以后,我,写,代码,的,时候,会,追求,简洁,和,优雅,而,不是,追求,复杂,写完,一个,功能,之后,会,想,想,有没有,更,简单,更,优雅,的,写法,能不能,简化,代码,能不能,去掉,多余,的,部分,让,代码,更,清晰,更,易读,也,更,高效,而且,我,也,越来越,觉得,简洁,的,代码,真的,比,复杂,的,代码,好,很多,简洁,的,代码,容易,读,容易,理解,也,容易,维护,不容易,出bug,出,了,bug,也,容易,排查,和,修复,而,复杂,的,代码,读,起来,很,费劲,理解,起来,很,困难,维护,起来,也,很,麻烦,很,容易,出bug,出,了,bug,也,很,难,排查,所以,简洁,优雅,的,代码,真的,很,重要,是,程序员,水平,的,体现。

当然,简洁,不,等于,简陋,也,不,等于,为了,简洁,而,牺牲,可读性,和,正确性,简洁,是,在,保证,正确,和,可读,的,前提下,尽量,简化,代码,去掉,多余,的,部分,让,代码,更,精炼,更,优雅,而,不是,为了,少,写,几行,代码,而,写,一些,晦涩,难懂,的,代码,那样,就,本末倒置,了,简洁,的,目的,是,让,代码,更,好,读,更,好,维护,而,不是,更,难,读,更,难,维护,这,一点,要,注意。

3. 性能优化要基于测量,而不是猜测

这,是,我,从,这本书,里,学到,的,第三,个,智慧,很多,程序员,包括,以前,的,我,优化,程序,性能,的,时候,喜欢,凭,感觉,猜,觉得,哪个,地方,慢,就,去,优化,哪个,地方,结果,往往,优化,了,半天,性能,没,提升,多少,反而,把,代码,搞,复杂,了,甚至,引入,了,新,的,bug,《编程珠玑》,告诉,我们,性能,优化,要,基于,测量,而,不是,猜测,要,用,工具,测量,程序,的,性能,找到,真正,的,瓶颈,然后,再,针对性,地,优化,这样,才能,事半功倍,用,最,少,的,精力,获得,最,大,的,性能,提升。

书,里,有,专门,的,章节,讲,性能,优化,作者,强调,在,优化,之前,一定,要,先,测量,找到,瓶颈,不要,凭,感觉,猜,因为,很多,时候,你,觉得,慢,的,地方,其实,并不,慢,而,你,觉得,快,的,地方,反而,是,瓶颈,只有,通过,测量,才能,找到,真正,的,瓶颈,然后,优化,瓶颈,才能,有效,提升,性能,而且,优化,之后,也,要,再,测量,看,性能,有没有,提升,提升,了,多少,不要,优化,了,半天,都,不,知道,有没有,效果,那样,是,盲目,优化,没有,意义。

这个,思想,给,了,我,很,大,的,影响,从那以后,我,优化,程序,性能,的,时候,不,再,凭,感觉,猜,了,而是,先,用,性能,分析,工具,测量,程序,的,性能,找到,真正,的,瓶颈,然后,再,针对性,地,优化,优化,完,之后,再,测量,看,效果,这样,效率,高,了,很多,也,不会,做,无用功,而且,也,避免,了,为了,优化,而,优化,把,代码,搞,复杂,引入,bug,因为,只有,真正,的,瓶颈,才,需要,优化,不是,瓶颈,的,地方,优化,了,也,没,什么,效果,反而,可能,把,代码,搞,复杂,得不偿失。

而且,这个,思想,也,让,我,明白,了,不要,过早,优化,很多,人,写,代码,的,时候,就,开始,考虑,性能,优化,写,一些,很,复杂,但是,性能,可能,稍,好,一点,的,代码,结果,代码,很,难读,很,难维护,而且,那个,地方,可能,根本,不是,性能,瓶颈,优化,了,也,没,什么,效果,得不偿失,其实,大部分,时候,程序,的,性能,都,是,够,的,不,需要,特别,优化,只有,当,性能,真的,有,问题,的,时候,才,需要,优化,而且,优化,要,基于,测量,找到,瓶颈,再,优化,不要,过早,优化,也,不要,盲目,优化,这,样,才能,在,性能,和,代码,可维护性,之间,找到,平衡。

4. 正确的数据结构,比巧妙的算法更重要

这,是,我,从,这本书,里,学到,的,第四,个,智慧,很多,程序员,包括,以前,的,我,很,看重,算法,觉得,算法,越,巧妙,越,厉害,但是,《编程珠玑》,告诉,我们,正确,的,数据结构,比,巧妙,的,算法,更,重要,很多,时候,选,对,了,数据结构,问题,就,迎刃而解,了,算法,也,会,变得,很,简单,很,自然,而,如果,数据结构,选,错,了,再,巧妙,的,算法,也,事倍功半,甚至,解决,不,了,问题。

书,里,有,很多,这样,的,例子,比如,刚才,说,的,位图,排序,就是,选,对,了,数据结构,位图,问题,就,变得,很,简单,很,高效,再,比如,书,里,讲,的,很多,问题,都是,通过,选,对,数据结构,来,简化,算法,提升,性能,比如,用,哈希表,来,快速,查找,用,树,来,维护,有序,数据,用,堆,来,实现,优先队列,用,并查集,来,处理,集合,合并,等等,选,对,了,数据结构,很多,问题,都,能,很,优雅,地,解决,算法,也,很,简单,很,自然。

这个,思想,给,了,我,很,大,的,影响,从那以后,我,设计,程序,的,时候,会,先,考虑,数据结构,想,清楚,用,什么,数据结构,来,存储,和,组织,数据,最,合适,然后,再,考虑,算法,因为,选,对,了,数据结构,算法,就,会,变得,很,简单,很,自然,而,如果,数据结构,选,错,了,算法,再,巧妙,也,很,难,高效,解决,问题,而且,我,也,越来越,觉得,数据结构,真的,比,算法,更,基础,更,重要,数据结构,是,程序,的,骨架,算法,是,程序,的,血肉,骨架,搭,好,了,血肉,才,好,填,骨架,搭,错,了,血肉,再,丰富,也,是,畸形,的,所以,数据结构,真的,很,重要,是,程序员,的,基本功,一定要,扎实。

而且,这个,思想,也,让,我,明白,了,不要,重复,造轮子,很多,常用,的,数据结构,和,算法,语言,的,标准库,都,已经,提供,了,比如,哈希表,动态数组,栈,队列,排序,查找,等等,都,有,现成,的,实现,而且,实现,得,很,好,很,高效,很,健壮,我们,直接,用,就,行,不用,自己,再,写,一遍,自己,写,的,往往,没有,标准库,的,好,还,容易,出bug,浪费,时间,所以,要,善于,利用,标准库,和,现成,的,数据结构,和,算法,不要,重复,造轮子,把,精力,放,在,业务,逻辑,上,这样,效率,更,高,代码,也,更,健壮。

5. 测试和调试是编程的重要部分,不是附属品

这,是,我,从,这本书,里,学到,的,第五,个,智慧,很多,程序员,包括,以前,的,我,觉得,写,代码,才,是,编程,的,核心,测试,和,调试,是,附属品,不,重要,能,省,就,省,但是,《编程珠玑》,告诉,我们,测试,和,调试,是,编程,的,重要,部分,不是,附属品,写出,正确,的,代码,很,重要,而,测试,和,调试,是,保证,代码,正确,的,重要,手段,不,能,忽视。

书,里,有,专门,的,章节,讲,测试,和,调试,作者,强调,写,代码,的,时候,就,要,考虑,测试,要,写,可测试,的,代码,也要,写,测试,用例,验证,代码,的,正确性,而且,调试,的,时候,要,有,方法,有,策略,不要,盲目,地,猜,要,通过,日志,断点,等,手段,定位,问题,找到,根本,原因,然后,修复,而,不是,随便,改,改,试试,那样,效率,很,低,也,不,容易,真正,解决,问题。

这个,思想,给,了,我,很,大,的,影响,从那以后,我,写,代码,的,时候,会,考虑,测试,尽量,写,可测试,的,代码,比如,函数,功能,单一,参数,明确,副作用,小,等等,这样,容易,测试,也,会,写,一些,测试,用例,验证,代码,的,正确性,尤其是,核心,逻辑,和,复杂,的,部分,一定,要,有,测试,保证,正确,而且,调试,的,时候,也,更,有,方法,了,不,再,盲目,地,猜,而是,通过,日志,断点,等,手段,一步步,定位,问题,找到,根本,原因,然后,修复,效率,高,了,很多,也,不,容易,留,下,隐患。

而且,这个,思想,也,让,我,明白,了,不要,怕,出bug,也,不要,怕,调试,bug,是,编程,的,一部分,每个,程序员,都会,写bug,关键,是,要,有,能力,发现,和,修复,bug,而且,要,从,bug,中,学习,总结,经验,避免,以后,再,犯,同样,的,错误,调试,的,过程,也是,学习,和,成长,的,过程,能,让,你,更,深入,地,理解,代码,和,系统,所以,不要,怕,出bug,也,不要,怕,调试,要,正视,它,把,它,当成,编程,的,一部分,认真,对待,这样,你,的,编程,能力,才,能,不断,提高。

三、对我编程方式的改变

上面,说,的,这些,思想,和,智慧,真的,改变,了,我,的,编程,方式,让,我,从,一个,只会,写,代码,的,程序员,慢慢,变成,了,一个,会,思考,的,程序员,下面,具体,说说,有,哪些,改变。

1. 从着急写代码,到先思考再动手

以前,我,拿到,问题,第一,反应,就是,着急,写,代码,边,写,边,想,写,到,哪,算,哪,结果,经常,写,了,一半,发现,思路,不对,要,推翻,重写,或者,写,完,了,发现,有,很多,bug,要,改,半天,效率,很,低,现在,我,拿到,问题,会,先,花,时间,思考,理解,问题,分析,问题,的,特点,约束,输入,输出,想,清楚,用,什么,数据结构,什么,算法,大概,的,思路,是,什么,可能,有,哪些,边界,情况,和,异常,情况,想,清楚,了,再,动手,写,代码,这样,虽然,看起来,慢,了,一些,但是,实际,上,更,快,因为,想,清楚,了,写,代码,就,很,顺利,一,遍,过,的,概率,很,高,也,不,容易,出错,而且,代码,质量,也,更,高,更,优雅,更,高效。

2. 从追求复杂,到追求简洁优雅

以前,我,写,代码,喜欢,追求,复杂,觉得,代码,越,复杂,越,能,体现,水平,喜欢,用,一些,很,花哨,的,语法,和,技巧,写,一些,看起来,很,厉害,但是,很,难读,的,代码,现在,我,写,代码,追求,简洁,优雅,尽量,用,简单,清晰,的,方式,解决,问题,去掉,多余,的,部分,让,代码,更,易读,更,易维护,也,更,不容易,出bug,写完,之后,还,会,重构,简化,代码,让,它,更,优雅,而且,我,也,越来越,觉得,简洁,的,代码,才,是,真正,体现,水平,的,能,把,复杂,的,问题,用,简单,优雅,的,代码,解决,才,是,真正,的,高手,而,把,简单,的,问题,写,得,很,复杂,是,水平,不够,的,表现。

3. 从凭感觉优化,到基于测量优化

以前,我,优化,程序,性能,喜欢,凭,感觉,猜,觉得,哪个,地方,慢,就,去,优化,哪个,地方,结果,往往,优化,了,半天,性能,没,提升,多少,反而,把,代码,搞,复杂,了,现在,我,优化,性能,会,先,用,工具,测量,找到,真正,的,瓶颈,然后,再,针对性,地,优化,优化,完,之后,再,测量,看,效果,这样,效率,高,了,很多,也,不会,做,无用功,而且,也,不会,为了,优化,而,优化,把,代码,搞,复杂,因为,只有,真正,的,瓶颈,才,值得,优化,不是,瓶颈,的,地方,优化,了,也,没,效果,得不偿失,所以,现在,我,的,代码,性能,更,好,也,更,简洁,可维护。

4. 从只看重算法,到更看重数据结构

以前,我,很,看重,算法,觉得,算法,越,巧妙,越,厉害,花,了,很多,时间,学,各种,巧妙,的,算法,但是,对,数据结构,不,太,重视,觉得,数据结构,就,那,几种,很,简单,现在,我,更,看重,数据结构,因为,我,明白,了,选,对,数据结构,问题,就,迎刃而解,算法,也,会,变得,很,简单,很,自然,而,数据结构,选,错,了,再,巧妙,的,算法,也,事倍功半,所以,现在,我,设计,程序,会,先,考虑,数据结构,想,清楚,用,什么,数据结构,最,合适,然后,再,考虑,算法,而且,我,也,会,更,深入,地,理解,各种,数据结构,的,特点,和,适用,场景,在,实际,工作,中,灵活,运用,选,最,合适,的,数据结构,解决,问题,这样,写,出来,的,代码,更,高效,也,更,优雅。

5. 从忽视测试调试,到重视测试调试

以前,我,忽视,测试,和,调试,觉得,写,代码,才,是,核心,测试,调试,是,附属品,能,省,就,省,写完,代码,随便,测,一下,没,大问题,就,交,了,结果,经常,有,隐藏,的,bug,线上,出,问题,调试,的,时候,也,盲目,地,猜,改,改,试试,效率,很,低,现在,我,重视,测试,和,调试,写,代码,的,时候,就,考虑,测试,写,可测试,的,代码,也,会,写,测试,用例,验证,代码,的,正确性,尤其是,核心,逻辑,一定,要,有,测试,保证,调试,的,时候,也,有,方法,有,策略,通过,日志,断点,等,手段,定位,问题,找到,根本,原因,然后,修复,这样,代码,质量,更,高,bug,更,少,出,了,问题,也,能,快速,定位,和,修复,效率,高,了,很多。

四、为什么这本书值得反复读

最后,说说,为什么,这本书,值得,反复读,我,已经,读,了,三遍,了,但是,还,会,继续,读,因为,每次,读,都,有,新,收获,新,感悟。

首先,这本书,教,的,是,思想,和,智慧,不是,具体,的,技术,技术,会,过时,但是,思想,和,智慧,不会,过时,不管,编程语言,怎么,变,技术,栈,怎么,变,编程,的,基本,思想,和,智慧,是,不变,的,比如,怎么,分析,问题,怎么,设计,数据结构,和,算法,怎么,优化,性能,怎么,写出,优雅,的,代码,这些,都是,通用,的,不,会,因为,技术,变,了,就,没用,了,所以,这本书,不会,过时,什么时候,读,都,有,收获,而且,随着,你,编程,经验,的,增加,读,的,时候,感悟,会,更,深,收获,会,更,大,因为,很多,东西,需要,有,实际,经验,才能,真正,理解,和,体会,刚,学,编程,的,时候,读,可能,只,觉得,算法,巧妙,有,了,经验,之后,再,读,就,能,体会,到,背后,的,思想,和,智慧,收获,更,大。

其次,这本书,的,案例,都,很,经典,很,有,代表性,每个,案例,都,能,教,你,一种,思考,方式,和,编程,智慧,而且,这些,案例,都,不,复杂,很,容易,理解,但是,又,很,巧妙,很,有,启发,读,完,之后,能,让,你,举一反三,把,这些,思想,和,智慧,运用,到,实际,工作,中,解决,各种,问题,而且,每次,读,都,能,从,这些,经典,案例,中,发现,新,的,细节,新,的,亮点,有,新,的,感悟,所以,常读,常新。

最后,这本书,能,让,你,重新,思考,编程,的,本质,很多,时候,我们,写,代码,写,久,了,会,陷入,细节,忘记,编程,的,本质,是什么,这本书,能,让,你,跳出,细节,从,更高,的,层面,思考,编程,思考,怎么,用,智慧,解决,问题,怎么,写出,优雅,高效,的,代码,怎么,成为,一个,更好,的,程序员,这,种,思考,是,很,珍贵,的,能,让,你,不,断,进步,不,断,提高,而,不是,一直,停留在,写,代码,的,层面,变成,一个,码农,所以,每隔,一段时间,重读,这本书,能,提醒,你,编程,的,本质,让,你,保持,思考,不断,进步。

五、写在最后

《编程珠玑》,是,一本,非常,优秀,的,编程,书籍,它,不,教,你,具体,的,语法,和,算法,而是,教,你,编程,的,思想,和,智慧,教,你,怎么,思考,怎么,用,智慧,解决,编程,问题,怎么,写出,优雅,高效,的,代码,它,改变,了,我,的,编程,智慧,让,我,从,一个,只会,写,代码,的,程序员,慢慢,变成,了,一个,会,思考,的,程序员,让,我,的,编程,方式,有,了,很大,的,改变,代码,质量,也,有,了,很,大,的,提升,我,很,感谢,这本书,也,很,推荐,大家,读,它。

如果你,是,编程,新手,我,建议,你,读,它,能,帮,你,建立,正确,的,编程,思维,少,走,弯路,如果你,是,有,经验,的,程序员,我,也,建议,你,读,它,能,帮,你,重新,思考,编程,的,本质,提升,编程,智慧,写出,更,好,的,代码,而且,建议,反复,读,每次,读,都,会,有,新,收获,新,感悟,常读,常新。

当然,读书,只是,一方面,更,重要,的,是,实践,把,书,里,学,到,的,思想,和,智慧,运用,到,实际,工作,中,在,实践,中,理解,和,消化,变成,自己,的,东西,这样,才能,真正,提高,自己,的,编程,水平,不然,只是,读,书,不,实践,是,没有,用,的,所以,建议,大家,边,读,边,实践,把,书,里,的,案例,自己,动手,做,一遍,体会,其中,的,思想,和,智慧,然后,在,实际,工作,中,运用,这样,收获,会,更,大。

希望,这篇,读书笔记,能,给,大家,一些,启发,和,参考,也,欢迎,大家,在,评论,区,分享,你们,读,《编程珠玑》,的,感受,和,收获,或者,有,什么,其他,好,的,编程,书籍,也,可以,推荐,给,我,一起,交流,一起,进步。

愿,我们,都,能,在,编程,的,道路,上,不断,学习,不断,思考,不断,进步,写出,更,优雅,更,高效,更,健壮,的,代码,成为,更好,的,程序员。