大道至简第二章读后感

                                                                        懒人造就了方法

           在读了《大道至简》的第一章之后,又读了《大道至简》的第二章“是懒人造就了方法”。两章都引用了古代的例子,一个是“愚公移山”另一个是《华阳国志》里的“李冰烧山”,两者都是要移山,但这两个人的方法却截然不同。愚公信心满满的开始了凿山,而且还知道“山不加增”而他“子子孙孙无穷尽”,所以他坚信只要勤劳终会有一天会把山挪走。而李冰在干什么呢?管理着成百上千人的队伍,要是忙起来的话必定焦头烂额。相反,他一点也不忙,还有工夫给妻子烧菜,闲到看火烧石头,正是这样他发现垒灶的石头被火烧的爆裂,遇水尤甚。从此《史记》上记下了“蜀守冰凿离堆”,而《华阳国志》上记下了他做这件事的方法“积薪烧之”。毋庸置疑,愚公是勤劳的,但李冰更加聪明,更加会“偷懒”。所以,这件事告诉我们,在编程的时候,我们不妨偷一偷懒,多想点方法,最后的结果可能是事半功倍。

           接下来,作者又告诉了我们,一百万行代码是可以写在同一个文件里的。大概第一个写汇编的人,把程序写在一个文件里了,所以后来就形成了习惯,大家都把代码写在同一个文件里。然而不久,Delphi1.0发布时,出现了一个大漏洞,它的编译器不支持超过64k的源代码文件。说明当时的程序员,习惯性的把代码写到同一个文件里,即使是一百万行。对于这些勤快的人来说,不能指望他们创造出单元文件这种东西,然而单元文件还是出现了。有了单元文件后,也就出现了新的概念:模块。于是大家开始可以分工合作。于是现在一个程序由多人编写。

           相信很多人不知道如何写程序。作者在书中也提到了这个问题。作者说道,如果我们知道如何把桌上的书整理好,为什么我们不把所学的知识分一下类,整齐的放脑子里呢。作者的这番话给我们提供了一个学习编程的好方法—将所学知识分类,归纳。

          最后,作者描述了他和一个朋友的对话。说实话,作为一个入门级别的编程人员,这段话我并不能完全理解。好在作者在最后作出了解释。作者说道,所谓“面向过程开发”其实是对“结构化程序设计”在代码阶段的一个习惯性说法。而作者忽略了这个阶段的原因,是即使没有任何方法存在,只要有了单元和模块的概念,在面向过程的时代,一样可以做出任意大型的程序。在面向过程的开发中,程序员不需要再造就什么方法,就可以进行愚公式开发工作了。如果不出现面向对象的话,这样伟大的工程可能还要再干一百年。而与面向对象无关的东西,却因过程和单元的出现而出现了,这就是工程。
          我们在写程序的时候,肯花时间去思考,找出最佳的算法,这个程序就变得简单了。另外,尝试着把学过的知识分一下类,可以更加清晰明了地理解程序的各种实现方法,有助于我们的学习。

原文地址:https://www.cnblogs.com/gong123/p/5906815.html