《大道至简》第二篇读后感

  First.战国时期李冰凿了一座山,史记中说是“蜀守冰凿离堆”,就是说李冰在成都的时候凿出了离堆。而他使用了“其崖崭峻不可破,乃积薪烧之”,他是一个非常聪明的人,这样加快了工程的进度,也不会让自己和工人累得要死,节省了大量的人力物力和精力。而愚公则是子子孙孙无穷下去,时间可谓不可估量。毕竟人的精力是有限的,我们要用有限的精力去做更多的事情,不能因为一件事而把精力用光。所以,当我们遇到问题的时候,不是要立刻去想出一个方法,一定要多学习,多思考,学着去偷懒,用最省力的方式去解决问题。“懒”是进步的标志,傻力气永远比不上巧方法,我们要学会偷懒而要懂得偷懒。

  Second.64k的源代码是2184行,如果风格好一些就要3000行左右,对于100万行代码写到一个文件中,那种为了查找一个函数去花费大量的时间的人他们是开发不出来单元文件的。所以,又是懒人创造了方法,他们创出了单元文件,出现了模块的概念。这样一些程序员开始分工作,不再需要一个人一个人接着去干成一个程序,这样大大节省了时间和精力,让一个程序变成多个程序员可以同时写。所以,模块化要在自己的心中形成一个理念,学会模块化。源代码分散开来,标志着结构化终于开始了。

  Third.我们学习过的知识就应该像我们平时把书分类一样,如果我们能把所学的知识归纳一下,整整齐齐地放在脑子里,这样才能学以致用。学了知识,并且学进去了但是不知道知识该怎么用,这就是没有将知识结构化导致的。如果学习的知识如果在脑子里面乱七八糟的放着,就当你真正需要用的时候也不是一下就可以想起来的。编程也是一样,要将程序用类封装好,有时候也可以加上必要的注释,就当你以后看起来的时候也会清清楚楚的明白所看的那一句是干什么用的。只有,将自己的所学到的知识归纳好,整理好,才能用最快的时间去解决一个问题。

  Forth.面向过程是对“流程”、“结构”和“编程方法”的高度概括。而面向对象本身只解决了“结构”和“编程方法”的问题,而并没有对“流程”加以改造。正真的对象之间是相互作用的,不会有个“顺序”的延时,所谓的面向对象的时间还是顺序的,所有还要经常考虑一个事件发生后对其他过程的影响。所以,面向对象的思维第一不可能彻底,第二只能用在总体分析层上,实质上我们只是把一个顺序的流程折叠成对象。

面向过程开发中,过程是CPU提供的,单元则是翻译器提供的。而面向对象则需要有相应的结构关系,所以我们往往还需要去思考解决这个问题的方法,所以,程序=数据+算法+方法。

  总之,我们要学着做一个“懒人”,这样我们才能去创造一个方法,而想去创造方法又离不开去思考,离不开我们需要把知识归纳,整理好之后,才有想出方法的能力。然后才能完成一个程序,在面向对象中才能真正的写出一个完整的程序。程序=数据+算法+方法这个步骤才能完成。

  

  

原文地址:https://www.cnblogs.com/xieshiyu/p/5907233.html